Self-synchronizing adaptive multistage receiver for wireless communication systems

ABSTRACT

The present invention discloses an adaptive near-far resistant receiver for wireless communication systems, such as, asynchronous DS-CDMA systems, without the use of prior synchronization. The only requirement is knowledge of the spreading code of the desired user. Also there is no need of a training period or of data-free observations. In one aspect the present system describes a method and system for filtering of an asynchronous wireless signal comprising the steps of receiving a data vector; of using the received data vector to update the weight coefficients of an adaptive filter without a prior knowledge of synchronization and without a need for a separate training period or data free observations.  
     In another aspect, the present system describes an adaptive near-far resistant receiver for an asynchronous wireless systems comprising means for receiving a data vector; means for; using the received data vector to update weight coefficients of an adaptive filter, and means for iterative multistage decomposition updating of the filter coefficients. In one embodiment the receiver uses an adaptive filter bank comprising a plurality of adaptive filters, wherein each filter corresponds to at least one different sampling time. An estimate of the timing is obtained from the maximum of a set of sequential outputs from the filter bank, The output that yields the maximum is preferably used to demodulate the information bit.

CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This patent application claims the benefit of the filing date of U.S. Provisional Patent Application Ser. No. 60/248,469, filed Nov.14, 2000 and entitled “Adaptive Multistage Filter-Bank Receiver for Wireless Communication Systems,” the entire contents of which are hereby expressly incorporated by reference.

FIELD OF THE INVENTION

[0002] The present invention relates to a filtering system and method for wireless communication signals. More specifically, the present invention is directed to a method and system for adaptively filtering asynchronous signals in wireless communication systems.

BACKGROUND OF THE INVENTION

[0003] Direct-sequence code-division multiple-access (DS-CDMA) has become an important component of recent communication systems. This is due to its many attractive properties for wireless communications such as the one depicted in FIG. 1A. In DS-CDMA communications, users' signals are multiplexed by distinct code waveforms, rather than by orthogonal frequency bands in frequency-division multiple access (FDMA), or by orthogonal time slots in time-division multiple access (TDMA). All users can transmit at the same time with each of them being allocated the entire available, broad-band, frequency spectrum for transmission. This method of channel allocation alleviates the problems commonly associated with other forms of channel allocation such as unused resources.

[0004] In CDMA, demodulation requires the suppression of two forms of noise, ambient channel noise, which is modeled as additive white Gaussian noise, plus multiple access interference (MAI), which is highly structured. The conventional receiver, which uses a simple correlation of the received signal and its user-spreading sequence (a standard matched filter), does not take into account the existence of MAI. The MAI caused by any one user is generally small, but as the number of interferers and their total power increases, the effects of MAI can become substantial. These effects fall within, what is called, the near-far problem.

[0005] The conventional receiver is severely limited by the effects of such MAI. One way to alleviate the MAI problem is to use power control schemes. However, power control is not easy to accomplish, especially in a wireless environment, where the power levels often vary dramatically. Even if perfect power control is used, the system may still need to be implemented with a forward error-correcting code to obtain a good performance. Another way of handling the near-far problem is to use near-far resistant receivers, which, in principle, can yield a substantial improvement over the standard receiver with perfect power control.

[0006] Multiuser detection techniques were proposed many years ago to mitigate the MAI problem. For example, S. Verdú, in “Minimum probability of error for asynchronous gaussian multiple-access channels,” IEEE Trans. on Inform. Theory, vol. IT-32, pp. 85-96, January 1986, [1], the entire contents of which are hereby expressly incorporated by reference, proposed and found the optimal multiuser detection criterion and maximum-likelihood sequence detection for DS-CDMA. Unfortunately, Verdú's detection and demodulation methods were generally too complex to realize in a practical DS-CDMA system.

[0007] As a consequence, a number of simplified detector-demodulators have been proposed to obtain near optimal performance with reduced computational complexity. (For example, see R. Lupas and S. Verdú, “Linear multiuser detectors for synchronous code-division multiple-access channels,” IEEE Trans. On Inform. Theory, vol. 35, pp. 123-136, January 1989 [2]; R. Lupas and S. Verdú, “Near-far resistance of multiuser detectors in asynchronous channels,” IEEE Trans. on Commun., vol. 38, pp.496-508, April 1990 [3]; Z. Xie, R. T. Short, and C. K. Rushforth, “A family of suboptimum detectors for coherent multiuser communications,” IEEE J. Select. Areas Commun., vol. 8, pp. 683-690, May 1990 [4]; U. Madhow and M. L. Honig, “MMSE interference suppression for direct-sequence spread spectrum CDMA,” IEEE Trans. On Commun., vol. 42, pp. 3178-31888, December 1994 [5]; M. L. Honig and J. S. Goldstein, “Adaptive reduced-rank residual correlation algorithms for DS-CDMA interference suppression,” in Conference Record of the Thirty-Second Asilomar Conference on Signals, Systems & Computers, 1998, vol. 1, pp. 551-555 [6]; and D. J. Lee, Adaptive Detection of DS/CDMA Signals Using Reduced-Rank Multistage Wiener Filter, Ph.D. thesis, University of Southern California, March 2000 [7], the contents of which are hereby expressly incorporated by reference.)

[0008] These receivers, however, deal primarily only with detectors that require a precise knowledge of the propagation delays of all users, which is usually unknown a priori. To use such an algorithm, the propagation delays need to be estimated and as a consequence, the receivers suffer from errors that occur with the estimation of the propagation delays. (See S. Parkvall, E. G. Strom, and B. Ottersten, “The impact of timing errors on the performance of linear ds-cdma receivers,” IEEE J. Select. Areas Commun., pp. 1660-1668, October 1996. [8], the contents of which are hereby expressly incorporated by reference). To obtain a better performance, the transmitters and receivers needed to be synchronized. Moreover, the transmitters and receivers, in this case, need to be synchronized in order to obtain a better performance. However, the synchronization requirement adds more complexity and cost to the system.

[0009] The conventional acquisition system that utilizes a tapped delay line with its weights being the elements of the spreading sequence also suffers from the same near-far problems. Many near-far resistant timing-acquisition algorithms have been developed. One approach is to jointly estimate the needed parameters of all users, as shown in Y. Steinberg and H. V. Poor, “On sequential delay estimation in wide-band digital communication systems,” in Proc. Intl. Symp. Information Theory, San Antonio, Tex., 1993, p. 423 [9]; and S. Y. Miller and S. C. Schwartz, “Parameter estimation for asynchronous multiuser communications,” in Proc. Conf. Information Sciences and Systems, Baltimore. Md., 1989, pp. 294-299 [10], the contents of which are hereby expressly incorporated by reference. While such techniques can provide excellent results, they are computationally complex.

[0010] Recently, maximum-likelihood synchronization of a single user is developed in S. E. Bensley and B. Aazhang. “Maximum-Likelihood synchronization of a single user for Code-Division Multiple-Access communication systems,” IEEE Trans. on Commun., pp. 392-399, March 1998 [11], the contents of which are hereby expressly incorporated by reference. However, the method in [11] requires a training period. This requirement is not feasible in certain situations. For example, whenever there is a significant change in the MAI level, during a deep fade or a turning-on of some near-in strong interferers, retraining is required, and the data transmission need to be interrupted accordingly. Similar limitations apply also to the minimum mean-square-error (MMSE) interference suppression techniques for the timing-acquisition, developed in U. Madhow, “MMSE interference suppression for timing acquisition and demodulation in Direct-Sequence CDMA systems,” IEEE Trans. on Commun., pp. 1065-1075, August 1998 [12], the contents of which are hereby expressly incorporated by reference.

[0011] By the use of a subspace decomposition technique, such as multiple signal classification (MUSIC), another type of timing estimator is developed in E. G. Ström, S. Parkvall, S. L. Miller, and B. E. Ottersten, “Propagation delay estimation in asynchronous direct-sequence code-division multiple access system,” IEEE Trans. on Commun., Vol. 44, pp. 84-93, January 1996 [13]; and S. E. Bensley and B. Aazhang, “Subspace-based channel estimation for code division multiple access communication systems,” IEEE Trans. on Commun., vol. 44, pp. 1009-1020, August 1996 [14], the contents of which are hereby expressly incorporated by reference. This type of estimator does not need a training sequence and provides good results when unknown information sequences are sent. However, this timing estimator still involves extensive computations due to the need for an eigen decomposition. Also, this technique assumes that the number of active users is fixed and needs to be known or estimated. As a result, there is a need for a system and method for a relatively simple, accurate, and cost effective filtering of an asynchronous wireless signal.

SUMMARY OF THE INVENTION

[0012] An adaptive near-far resistant receiver for wireless communication systems, such as, asynchronous DS-CDMA systems is developed without the use of prior synchronization. The only requirement is knowledge of the spreading code of the desired user. Also, there is no need of a training period or of data-free observations.

[0013] In one aspect the present system describes a method and system for filtering of an asynchronous wireless signal comprising the steps of receiving a data vector; of using the received data vector to update the weight coefficients of an adaptive filter without prior knowledge of synchronization and without a need for a separate training period or data free observations.

[0014] In another aspect, the present system describes an adaptive near-far resistant receiver for an asynchronous wireless system comprising: means for receiving an asynchronous data vector including a spreading code; using the received asynchronous data vector, means for updating weight coefficients of an adaptive filter without prior knowledge of synchronization of the spreading code of the data vector; using the updated weight coefficients, means for determining synchronization of the spreading code; and means for demodulating the output of the filter using the determined synchronization of the spreading code for obtaining a filtered data vector.

[0015] In yet another aspect, the present system discloses a method performed by a computer for filtering interference and noise of an asynchronous wireless signal comprising: receiving an asynchronous data vector including a spreading code; using the received asynchronous data vector, updating weight coefficients of an adaptive filter without prior knowledge of synchronization of the spreading code; using the updated weight coefficients information to determine synchronization of the spreading code; and demodulating the output of the filter using the determined synchronization of the spreading code for obtaining a filtered data vector.

[0016] The method further comprises the step of dividing the data vector represented by x[i] into two channels x₁[i] and d₁[i] using a transformation T₁ on x[i], represented by T₁x[i], wherein the transformed data vector x[i] does not contain information about a designated sender's spreading code s₁, and d₁[i] contains primarily only information about the spreading code s₁, and residual data from correlation of s₁ and x[i].

[0017] In yet another aspect, the present system describes an adaptive receiver for filtering interference and noise of an asynchronous wireless signal comprising: means for receiving an asynchronous data vector including information data bits; means for updating weight coefficients of an adaptive filter without prior knowledge of synchronization of the information data bits for determining the start of the information data bits; and means for demodulating the output of the adaptive filter.

BRIEF DESCRIPTION OF DRAWINGS

[0018] Other embodiments of the present invention will become readily apparent to those skilled in the art from the following detailed description. As will be realized, the invention is capable of other and different embodiments and its several details are capable of modification in various respects, all without departing from the spirit and scope of the present invention. Accordingly, the drawings and detailed description are to be regarded as illustrative in nature and not as restrictive.

[0019]FIG. 1A is an exemplary block diagram of a mobile phone channel;

[0020]FIG. 1 is an exemplary block diagram of an asynchronous DS-CDMA system;

[0021] FIGS. 2(a)-2(g) are exemplary timing diagrams of construction of a typical DS signal;

[0022]FIG. 3 is an exemplary block diagram of a receiver according to one embodiment of the present invention;

[0023]FIG. 4 is an exemplary block diagram of a structure of a test statistic;

[0024]FIG. 5 is an exemplary block diagram of a multistage decomposition of a likelihood ratio test for M=4;

[0025]FIG. 6 is an exemplary decomposition of data vectors of FIG. 7;

[0026]FIG. 7 is an exemplary conceptual block diagram of a self-synchronized detector;

[0027]FIG. 8 is an exemplary flow diagram for deriving test statistics by the iterative version of the multistage adaptive filter;

[0028]FIG. 9 is an exemplary conceptual flow diagram of block 77 of FIG. 7;

[0029]FIG. 9A is an exemplary algorithm for finding the maximum of ¦Re{y[i]}¦ over NS period;

[0030]FIG. 10 is an exemplary flow diagram for demodulation system of FIG. 7; and

[0031] FIGS. 11-20 are performance charts for various embodiments of the present invention.

DETAIL DESCRIPTION

[0032] In this invention, an adaptive near-far resistant receiver for asynchronous DS-CDMA is described which assumes no prior knowledge of synchronization. The receiver of the present invention only needs to have knowledge of the spreading code of the desired user. Also there is no need of a separate training period or of data-free observations. The receiver is composed of a near-far resistant acquisition criterion and demodulation scheme. Furthermore, a lower complexity version of the receiver is developed that is related to the concept of the multistage Wiener filter described in J. S. Goldstein, I. S. Reed, and L. L. Scharf, “A multistage representation of the Wiener filter based on orthogonal projections,” IEEE Trans. Inform. Theory, vol. 44, pp. 2943-2959, November 1998 [16], the contents of which are hereby expressly incorporated by reference. This results in a substantial reduction of the computational burden and a rapid convergence in an adaptive implementation. Finally, an iterative version of the multistage decomposition is developed.

[0033] As shown in L. E. Brennan and I. S. Reed,“A digital adaptive antenna for JTIDS,” The final report on contract F19628-88-C-0098, Adaptive Sensors, Inc., December 1989, submitted to the Electronic Systems Division AFSC, USAF [15], the contents of which are hereby expressly incorporated by reference, acquisition is an optimum signal detection problem analogous to radar-signal detection. In [15], the detector of the signal looks at each sampling interval for a new data set of N samples that occur periodically, where N is the spreading gain of the system. This is accomplished by a moving window or its physical realization, using a tapped delay line (TDL). This moving window is used to sweep through each periodic time interval of N samples. In each such time period, an estimate of the timing is obtained from the maximum of a set of optimum adaptive filter outputs. Thus, synchronization can be done sequentially over the code length by the maximum likelihood detector. For demodulation, an adaptive MMSE receiver described in[4] and [7] is implemented. One approach for implementing the receiver is the equivalent of a TDL, finite impulse response (FIR) adaptive filter bank. Such an FIR detector-demodulator adaptive filter bank is converted then to the considerably simpler bank of iterative or infinite impulse response (IIR) filters.

[0034] The authors in [16] have developed a new type of reduced-rank adaptive Wiener filter. With the concept of the reduced-rank multistage-Wiener adaptive filter a lower complexity version of the receiver is developed. As a consequence, covariance-matrix inversions or eigen decompositions are avoided, thereby making possible a substantial reduction in computational complexity. The multistage scheme not only eliminates matrix inversions, but its adaptive version which is developed in [7] can be realized directly from the raw A/D converted digital data without any need for an explicit estimation of the covariance matrix. These important features contribute to a significant reduction of the computational cost and the amount of sample support usually required to accurately estimate the covariance matrix, as shown in I. S. Reed, J. D. Mallet, and L. E. Brannan, “Rapid convergence rate in adaptive arrays,” IEEE Trans. Aerosp. Electron. Syst., AES-10, pp.853-863, November 1974 [24], the contents of which are hereby expressly incorporated by reference.

[0035] In this invention, a new iterative method or an IIR version of the reduced-rank multistage-Wiener adaptive filter is developed. In this new method, the coefficients of each filter of a filter bank are updated every time that a data vector is received. Thus, each filter continuously keeps track of the changes of the environment. Furthermore, this new algorithm is implemented more efficiently because it obviates the necessity of matrix multiplications. This new algorithm can be realized as an iterative or IIR adaptive filter bank with each filter of the type suggested in [6], whereas the original algorithm in [16] or the training-based algorithm in [7] needs to be realized as an FIR adaptive filter.

[0036] For simplicity reasons, only binary phase-shift keying (BPSK) modulation is developed and used in this disclosure, however, it will be recognized by those skilled in the art that other modulation schemes for other embodiments of the invention are also possible. Therefore, the receiver can be applied to many other modulation schemes that utilize other symbol alphabets and spreading-sequence generators. Furthermore, the present invention is not limited by the type of modulation code or the code length of the desired user or of the other users. For example, the family of 4-phase sequence developed in P. V. Kumar, H. F. Francis Lu, T. Helleseth and D.-J. Shin, “On the Large Family of Low Correlation Quaternary Sequences S(2),” Proceedings of the IEEE Intnl. Conf. Personal Wireless Comm., (ICPWC'2000), Hyderbad, pp.33-37, December 17-20, 2000 [26], the contents of which are hereby expressly incorporated by reference, can also be used as a spreading sequence in addition to the Gold code (described in Appendix A). Synchronization and demodulation of the receiver system is derived in detail in the following sections. The reduced-rank version of the receiver that is based on the multistage representation of the Wiener adaptive filter is also described below.

[0037] Asynchronous DS-CDMA System Model

[0038] Consider an asynchronous DS-CDMA system that uses BPSK modulation with K simultaneous users on an additive white Gaussian noise (AWGN) baseband channel, as illustrated in FIG. 1. The received signal can be written in the form, $\begin{matrix} {{{r(t)} = {{\sum\limits_{m = {- \infty}}^{\infty}{\sum\limits_{k = 1}^{K}{A_{k}{b_{k}\lbrack m\rbrack}{s_{k}\left( {t - {m\quad T_{b}} - \tau_{k}} \right)}}}} + {n(t)}}},} & (1) \end{matrix}$

[0039] where the parameters and other quantities are defined as follows:

[0040] T_(b) Information symbol interval.

[0041] n(t) Additive white Gaussian noise (AWGN).

[0042] b_(k)[m] The m-th information symbol of the k-th user and b_(k)[m]∈{−1,0,1} where symbol zero denotes the fact that the k-th user is off (has either not started or has finished transmission).

[0043] A_(k) Amplitude of the k-th user.

[0044] τ_(k) The propagation delay of the k-th user.

[0045] Here, S_(k)(t) is the spreading waveform of the k-th user, given by $\begin{matrix} {{{s_{k}(t)} = {\sum\limits_{j = 0}^{N - 1}{c_{j}^{(k)}{\varphi \left( {t - {j\quad T_{c}}} \right)}}}},} & (2) \end{matrix}$

[0046] where T_(c) is the chip interval and φ(t) is the chip waveform, which is assumed to approximate a rectangular pulse of duration T_(c). (Each bit in the spreading code is called a chip.) The spreading code waveforms have unit amplitude and are assumed to be periodic with the time period T_(b). In one symbol period, there are N=T_(b)/T_(c) chips, modulated with the spreading code (C₀ ^((k)), C₁ ^((k)), . . . , C_(N−1) ^((k))). Here, also N is called the spreading gain.

[0047] To understand how the asynchronous DS-CDMA signal is determined, an example for K=2 and N=31, is presented next. In the DS-CDMA system, the information-bearing sequence for each user is spread over a broader bandwidth by means of a spreading wave-form that is unique to that user. FIGS. 2(a)-2(g) depict construction of a typical DS signal. FIGS. 2(a) and 2(b) are parts of two information sequences, FIGS. 2(c) and 2(d) are two spreading waveforms, FIGS. 2(e) and 2(f) are the two modulated waveforms to be transmitted, one for the desired user 1 and the other for the interfering user (user 2). FIG. 2(g) is the combined waveform of FIGS. 2(e) and 2(f). Note that user 2 is assumed to be delayed by τ₂−τ₁=4T_(c) seconds with respect to user 1. FIG. 2(a) shows two bits of an information sequence for user 1. The spreading waveform of user 1 is shown in FIG. 2(c). It is constructed by modulating the chip waveform φ(t) by means of a spreading code. In this example, a Gold code of length 31 is employed for the spreading code of user 1, given by s₁=(−1, −1, −1, 1, 1, −1, 1, 1, 1, 1, −1, 1, 1, −1, 1, −1, −1, −1, 1, 1, 1, 1, 1, 1, −1, 1, −1, −1, −1, −1, −1) (see Appendix bit in the spreading code s₁ is called a chip. FIG. 2(e) shows the modulated baseband DS signal that corresponds to the multiplication (modulation) of the information sequence and the spreading waveform in FIGS. 2(a) and 2(c). The interfering information signal of user 2 that contributes to the received signal, is assumed to be offset in time from that of user 1 by 4T_(c) and is illustrated in FIG. 2(b). Also, FIGS. 2(d) and (f) show the spreading waveform and the modulated signal of user 2. The spreading code for user 2 is given by S2 (1, 1, 1, 1, −1, 1, −1, −1, −1, 1, −1, −1, 1, −1, −1, 1, −1, −1, 1, 1, −1, 1, −1, −1, −1, −1, −1, 1, −1, −1, −1). The baseband transmitted signal for the time interval [t, t+2T_(b)], shown in FIG. 2(g), is the sum of the modulated signals of both users.

[0048] To facilitate the derivation of the receiver, the communication channel is assumed to approximate a time-invariant channel over some interval of time exceeding N chips, i.e. the channel is quasi-stationary. In particular, the number, the powers, the delay profiles of the users and the interferers are assumed to be fixed (but unknown). Only the turning on-and-off of the information sequences, their b_(k)'s, and the AWGN are changing in time. In scenarios of this type, it turns out that the receiver is able to adapt quickly to any such changing environment. As a consequence such assumptions affect the usefulness of the receiver of the present invention only minimally.

[0049] An exemplary receiver structure is shown in FIG. 3. For simplicity in its realization, the proposed receiver is described using a baseband-equivalent structure. Such a baseband complex signal process is physically achieved by the combination of quadrature demodulation and a phase-locked loop (PLL). (For example, see J. G. Proakis, Digital Communications, McGraw-Hill, New York, N.Y., 3^(rd) edition, 1995, Chapter 6 [25], the contents of which are hereby expressly incorporated by reference). This converts the received radio frequency (RF) modulated signal to a baseband complex-valued signal. This means that after converting the received signal to baseband complex-valued signals, the received signal is passed through a filter that is matched to the square-wave chip (or other type of waveform that is used to be the chip waveform). The output of this chip matched filter is $\begin{matrix} {{x(t)} = {{\int_{t}^{t + {T\quad c}}{{r\left( t^{\prime} \right)}{t^{\prime}}}} = {\int_{0}^{T\quad c}{{r\left( {t^{\prime} - t} \right)}{{t^{\prime}}.}}}}} & (3) \end{matrix}$

[0050] After that the output of the chip matched filter is sampled once every T_(s) seconds, where S=T_(c)/T_(s) is an integer and S≧1. This means, that the sampling rate is greater than or equal to the chip rate. Then the output is used as the input to the N-element tapped delay line (TDL). The signal is sampled at time iT_(s) so that the tapped delay line can be expressed by the column vector,

x[i]=[x(iT _(s)),x(iT _(s) −T _(c)), . . . , x(iT _(s)−(N−1)T _(c))]^(T),  (4)

[0051] where [.]^(T) denotes matrix transpose. Similarly the tap-weights' vector is expressed as the column vector,

W[i]=[w _(o) [i], W ₁ [i], . . . , W _(N−1) [i]] ^(T).  (5)

[0052] The components of the weight vector w[i] are determined later in Eq. (30) of Section 3.1.

[0053] The output of the tapped delay line filter, y[i], is given by the inner product of the vectors in Eqs.(4) and (5) as follows: $\begin{matrix} {{{y\lbrack i\rbrack} = {{{w\lbrack i\rbrack}^{\dagger}{x\lbrack i\rbrack}} = {\sum\limits_{n = 0}^{N - 1}{{\omega_{n}\lbrack i\rbrack}^{*}{x\left( {{i\quad T_{s}} - T_{c} + {m\quad T_{b}}} \right)}}}}},} & (6) \end{matrix}$

[0054] where [.]^(†) denotes the conjugate (Hermitian) transpose of a matrix, and [.]^(*) denotes the conjugate of a complex number. This output is passed through the time acquisition and demodulation system to obtain the information bit after synchronization. This time acquisition system can be modeled as a filter bank constructed of NS parallel receivers, each of the type shown in FIG. 3, in order to identify the time phases at which to demodulate the information symbols of the desired user.

[0055] Receiver Structure, Synchronization System

[0056] As shown in [15], the synchronization problem in communications is a signal detection problem analogous to radar detection. This problem can be modeled as a binary hypothesis problem, where hypothesis H₁ corresponds to target signal presence, and hypothesis H₀ corresponds to target-signal absence. Thus at each time sample of the N-vector x[i] the synchronization receiver need to distinguish between two hypotheses of some user, say user 1. The target signal under hypothesis H₁ is denoted by the N-vector A₁b₁s₁, where A₁ is the amplitude of user 1, b₁ is the information bit of user 1, and s₁ = [c₀⁽¹⁾, c₁⁽¹⁾, …  , c_(N − 1)⁽¹⁾]^(T)

[0057] is the signature sequence of user 1, where the observation vector at the sample time iT_(s) is the N-vector x[i], given in Eq. (4).

[0058] The noise environment is composed of N-vectors that are due to the combined effects of the interference sources and white noise. The noise process n(t) is assumed to approximate complex Gaussian noise with zero mean by an application of the central limit theorem [11] and a covariance matrix, defined as follows:

R _(n) [i]=E {n[i]n ^(†) [i]}  (7)

[0059] Thus, at a particular symbol interval the two hypotheses, which the adaptive detector need to distinguish at each sampling time, are given by

H ₀ : x [i]=n[i],

H ₁ : x [i]=A ₁ b ₁ s ₁ +n[i].

[0060] given b₁ where b₁=+1 or −1. Note that the condition b₁=0, x[i] is equivalent to the null hypothesis H₀.

[0061] For simplicity, let N=T_(b)/T_(c) and S=T_(c)/T_(s), where both numbers are integers. If the spreading code modulation is approximately band-limited, the case S=2 would correspond with Nyquist sampling. It is easy to show that the covariance matrix of the sample vector x[i] is periodic with the integer time period NS. In other words, x[i] is a cyclostationary process with period NS.

[0062] The random vector x[i], when conditioned on the first user's information symbol b₁, is approximately Gaussian under both hypotheses. The condition probability densities of x[i] are $\begin{matrix} \begin{matrix} {{p\left( {\left. {x\lbrack i\rbrack} \middle| H_{1} \right.,b_{1}} \right)} = \quad {\frac{1}{\pi^{N}d\quad e\quad {t\left( {R_{n}\lbrack i\rbrack} \right)}}e^{{- {({{x{\lbrack i\rbrack}} - {A_{1}b_{1}s_{1}}})}^{\dagger}}{R_{n}^{- 1}{\lbrack i\rbrack}}{({{x{\lbrack i\rbrack}} - {A_{1}b_{1}s_{1}}})}}}} \\ {{{p\left( {x\lbrack i\rbrack} \middle| H_{0} \right)} = \quad {\frac{1}{\pi^{N}d\quad e\quad {t\left( {R_{n}\lbrack i\rbrack} \right)}}e^{{- {x^{\dagger}{\lbrack i\rbrack}}}{R_{n}^{- 1}{\lbrack i\rbrack}}{x{\lbrack i\rbrack}}}}},} \end{matrix} & (8) \end{matrix}$

[0063] where det(R) denotes the determinant of R. From Eq. (8), the conditional probability density of p(x [i]¦H₁,b₁) can be expressed in terms of p(x [i]¦H₁,b₁) for b₁=±1 as follows: $\begin{matrix} {{{p\left( {x\lbrack i\rbrack} \middle| H_{1} \right)} = {\sum\limits_{b_{1}}{{p\left( b_{1} \right)} \cdot {p\left( {\left. {x\lbrack i\rbrack} \middle| H_{1} \right.,b_{1}} \right)}}}},} & (9) \end{matrix}$

[0064] where p(b₁=1)=p(b₁=−1)=½. Then, the likelihood-ratio test (LRT) takes the form, $\begin{matrix} {{\Lambda = {\frac{p\left( {x\lbrack i\rbrack} \middle| H_{1} \right)}{p\left( {x\lbrack i\rbrack} \middle| H_{0} \right)}\begin{matrix} \overset{H_{1}}{>} \\ \underset{H_{0}}{<} \end{matrix}\gamma}},} & (10) \end{matrix}$

[0065] where γ is the detection threshold. The substitution of the conditional probability density functions, given in Eq.(9), into Eq.(10) yields: $\begin{matrix} \begin{matrix} {\Lambda = {\frac{1}{2}\left( \frac{{p\left( {\left. {x\lbrack i\rbrack} \middle| H_{1} \right.,{b_{1} = 1}} \right)} + {p\left( {\left. {x\lbrack i\rbrack} \middle| H_{1} \right.,{b_{1} = {- 1}}} \right)}}{p\left( {x\lbrack i\rbrack} \middle| H_{0} \right)} \right)}} \\ {= {\frac{e^{{({- {({A_{1}s_{1}})}})}^{\dagger}{R_{n}^{- 1}{\lbrack i\rbrack}}{({A_{1}s_{1}})}}\left\lbrack {e^{{- 2}R\quad e{\{{{({A_{1}s_{1}})}^{\dagger}{R_{n}^{- 1}{\lbrack i\rbrack}}{x{\lbrack i\rbrack}}}\}}} + e^{2{Re}{\{{{({A_{1}s_{1}})}^{\dagger}{R_{n}^{- 1}{\lbrack i\rbrack}}{x{\lbrack i\rbrack}}}\}}}} \right\rbrack}{2}.}} \end{matrix} & (11) \end{matrix}$

[0066] Thus, the likelihood ratio test in Eq.(10) reduces to $\begin{matrix} {{\Lambda = {\cos \quad {h\left( {2R\quad e\left\{ {\left( {A_{1}b_{1}s_{1}} \right)^{\dagger}{R_{n}^{- 1}\lbrack i\rbrack}{x\lbrack i\rbrack}} \right\}} \right)}\begin{matrix} \overset{H_{1}}{>} \\ \underset{H_{0}}{<} \end{matrix}\gamma_{1}}},} & (12) \end{matrix}$

[0067] where γ₁ is a new decision constant. Since the hyperbolic cosine function cosh(.) is a monotonically increasing function in the magnitude of its argument, the test in Eq.(12) is clearly equivalent to $\begin{matrix} {{\left| {{Re}\left\{ {q\lbrack i\rbrack} \right\}} \right| = \left| {{Re}\left\{ {s_{1}^{\dagger}{R_{n}^{- 1}\lbrack i\rbrack}{x\lbrack i\rbrack}} \right\}} \middle| {\begin{matrix} \overset{H_{1}}{>} \\ \underset{H_{0}}{<} \end{matrix}\gamma_{2}} \right.},{where}} & \left( \text{13a} \right) \\ {{{q\lbrack i\rbrack} = {s_{1}^{\dagger}{R_{n}^{- 1}\lbrack i\rbrack}{x\lbrack i\rbrack}}},} & \left( {13b} \right) \end{matrix}$

[0068] and γ2 is another constant.

[0069] The test statistic in Eq. (13a) can be used at each clock time or phase within the time period NT_(c) to test for the existence of the signal of a particular user, If

Q[i]={¦Re{q[i]}¦, . . . , ¦Re{q[i−NS+1]}¦}  (14)

[0070] is the set of such tests in increasing time sequence of the form, given in Eq. (13a) over a past spreading code period total of NS clock times, then the integer clock time î∈{i, i−1, . . . , i−NS+1}, such that $\begin{matrix} {\left| {{Re}\left\{ {q\left\lbrack \hat{i} \right\rbrack} \right\}} \right| = {\max\limits_{k \in {\{{0,1,\quad,{{NS} - 1}}\}}}\left| {{Re}\left\{ {q\left\lbrack {i - k} \right\rbrack} \right\}} \right|}} & (15) \end{matrix}$

[0071] is attained, is the time that synchronization is most likely to occur within the interval (i−NS+1, i). The “greatest of” sequence-in-time test in Eq. (15) detects sequentially the maximum of all likelihood tests in the filter bank of the tests in the set Q [i] in Eq. (14).

[0072] The matrix R_(n)[i] in Eqs. (13a) and (13b) is the covariance matrix of the signal-free observation N-vector x[i]=n[i]. In the classical adaptive-array application it is normally possible to collect signal-free observation vectors. However, in a CDMA-type system, obtaining signal-free observation vectors at the receiver is not at all a trivial task. The test in Eq. (13a) needs to be considerably modified in order to be realized with both signal-plus-noise and noise-only data vectors.

[0073] To accomplish this modification test in Eq. (13a) is expressed equivalently next in, what is called, the generalized sidelobe canceler (GSC) form. Consider an N×N nonsingular matrix T₁ with the structure, $\begin{matrix} {{T_{1} = \begin{bmatrix} u_{1}^{\dagger} \\ B_{1} \end{bmatrix}},} & (16) \end{matrix}$

[0074] where B₁ is, what is called, a blocking matrix whose rows are composed of any orthonormal basis set of the nullspace of the normalized signal vector $u_{1} = {s_{1}/{\sqrt{s_{1}^{\dagger}s_{1}}.}}$

[0075] That is,

B ₁ u ₁ =B ₁ s ₁=0.  (17)

[0076] The test statistic in Eq. (13a) can be re-expressed in terms of the transformation T₁, defined in Eqs. (16) and (17) as the expression, $\begin{matrix} {\left| {R\quad e\left\{ {s_{1}^{\dagger}{R_{n}^{- 1}\lbrack i\rbrack}{x\lbrack i\rbrack}} \right\}} \right| = \left| {{Re}\left( {s_{1}^{\dagger}{T_{1}^{\dagger}\left( {T_{1}{R_{n}\lbrack i\rbrack}T_{1}^{\dagger}} \right)}^{- 1}T_{1}{x\lbrack i\rbrack}} \right\}} \middle| . \right.} & (18) \end{matrix}$

[0077] To evaluate the latter test statistic in Eq. (13a), let the transformed output vector be expressed in the form, $\begin{matrix} {{{T_{1}{x\lbrack i\rbrack}} = {\begin{bmatrix} {u_{1}^{\dagger}{x\lbrack i\rbrack}} \\ {B_{1}{x\lbrack i\rbrack}} \end{bmatrix} = \begin{bmatrix} {d_{1}\lbrack i\rbrack} \\ {x_{1}\lbrack i\rbrack} \end{bmatrix}}},} & (19) \end{matrix}$

[0078] where d₁[i] = u₁^(†)x[i]

[0079] is a signal-plus-noise scalar process and x₁[i]=B₁x[i], is an (N−1)−dimensional process with the signal removed.

[0080] Here, the data vector x[i] is divided by the transformation T, into two channels or paths, namely, d₁[i] and x₁[i], respectively, as shown in FIG. 4. The transformed data vector x₁[i] does not contain any information about the signal s₁ because it was obtained by a projection of the data onto the orthogonal complement of the signal subspace. Actually, in the channel of the d₁[i] process, obtained when the data vector x[i] is projected onto the signal subspace, the interference has been suppressed already due to the low cross-correlation property of the other users' spreading codes. This d₁[i] process is the same process that is obtained from the cross-correlation conventional detector which yields for low interference level an acceptable performance by the exploitation of this property. However, with severe MAI due to the near-far problem, it is possible that the contribution of the interference in the d₁[i] channel is still significant. Thus, the other channel x₁[i] which contains information only about the interference-plus-noise can be used to partially cancel the interference-plus-noise process in the d₁[i] channel. Then the herein described multistage decomposition for a Wiener filter provides a natural and optimal way to accomplish such a step-by-step cancellation process.

[0081] The correlation matrix of the transformed vector T₁x[i] can be expressed as the following partitioned matrix: $\begin{matrix} {{{T_{1}{R_{x}\lbrack i\rbrack}T_{1}^{\dagger}} = {\begin{bmatrix} {u_{1}^{\dagger}{R_{x}\lbrack i\rbrack}u_{1}} & {u_{1}^{\dagger}{R_{x}\lbrack i\rbrack}B_{1}^{\dagger}} \\ {B_{1}{R_{x}\lbrack i\rbrack}u_{1}} & {B_{1}{R_{x}\lbrack i\rbrack}B_{1}^{\dagger}} \end{bmatrix} = \begin{bmatrix} {\sigma_{d_{1}}^{2}\lbrack i\rbrack} & {r_{x_{1}d_{1}}^{\dagger}\lbrack i\rbrack} \\ {r_{x_{1}d_{1}}\lbrack i\rbrack} & {R_{x_{1}}\lbrack i\rbrack} \end{bmatrix}}},{where},} & (20) \\ {{{\sigma_{d_{1}}^{2}\lbrack i\rbrack} = {{u_{1}^{\dagger}{R_{x}\lbrack i\rbrack}u_{1}} = {E\left\{ \left| {d_{1}\lbrack i\rbrack} \right|^{2} \right\}}}},} & (21) \\ {{{r_{x_{1}d_{1}}\lbrack i\rbrack} = {{B_{1}{R_{x}\lbrack i\rbrack}u_{1}} = {E\left\{ {{x_{1}\lbrack i\rbrack}{d_{1}^{*}\lbrack i\rbrack}} \right\}}}},} & (22) \\ {{{R_{x_{1}}\lbrack i\rbrack} = {B_{1}{R_{x}\lbrack i\rbrack}B_{1}^{\dagger}}},} & (23) \end{matrix}$

[0082] with E{.} denoting the expected value operator. Next the signal-free correlation matrix R_(n)[i], needed in Eq.(13a), can be epressed in terms of R_(x)[i] by $\begin{matrix} {{{R_{n}\lbrack i\rbrack} = {{R_{x}\lbrack i\rbrack} - {A_{1}^{2}s_{1}s_{1}^{\dagger}}}},} & \left( \text{23a} \right) \end{matrix}$

[0083] where s₁s₁^(†)

[0084] is the N×N matri outer product of vector s₁ by itself. If one defines the positive number ${\delta_{1} = \sqrt{s_{1}^{\dagger}s_{1}}},$

[0085] it can be shown, using Eq.(23a), that $\begin{matrix} {{{T_{1}{R_{n}\lbrack i\rbrack}T_{1}^{\dagger}} = {\begin{bmatrix} {u_{1}^{\dagger}{R_{n}\lbrack i\rbrack}u_{1}} & {u_{1}^{\dagger}{R_{n}\lbrack i\rbrack}B_{1}^{\dagger}} \\ {B_{1}{R_{n}\lbrack i\rbrack}u_{1}} & {B_{1}{R_{n}\lbrack i\rbrack}B_{1}^{\dagger}} \end{bmatrix} = \begin{bmatrix} {{\sigma_{d_{1}}^{2}\lbrack i\rbrack} + {A_{1}^{2}\delta_{1}^{2}}} & {r_{x_{1}d_{1}}^{\dagger}\lbrack i\rbrack} \\ {r_{x_{1}d_{1}}\lbrack i\rbrack} & {R_{x_{1}}\lbrack i\rbrack} \end{bmatrix}}},} & \left( {23b} \right) \end{matrix}$

[0086] With the aid of the matrix inversion lemma in Jerry M. Mendel, Lessons in Estimation Theory for Signal Processing, Communications, and Control, Prentice-Hall, Englewood Cliffs, N.J., 1995 [17], the contents of which are hereby expressly incorporated by reference, the inverse of T₁R_(n)[i]T₁^(†)

[0087] is computed to be $\begin{matrix} {\left( {T_{1}{R_{n}\lbrack i\rbrack}T_{1}^{\dagger}} \right)^{- 1}{\quad{= {\quad{{\left( {{\xi_{1}\lbrack i\rbrack} + {A_{1}^{2}\delta_{1}^{2}}} \right)^{- 1}\begin{bmatrix} 1 & {{r_{x_{1}d_{1}}^{\dagger}\lbrack i\rbrack}{R_{x_{1}}^{- 1}\lbrack i\rbrack}} \\ {- {\quad{{R_{x_{1}}^{- 1}\lbrack i\rbrack}{r_{x_{1}d_{1}}\lbrack i\rbrack}}}} & {{- {R_{x_{1}}^{- 1}\lbrack i\rbrack}}\left( {{\left( {{\xi_{1}\lbrack i\rbrack} + {A_{1}^{2}\delta_{1}^{2}}} \right)I} + {{r_{x_{1}d_{1}}\lbrack i\rbrack}{r_{x_{1}d_{1}}^{\dagger}\lbrack i\rbrack}{R_{x_{1}}^{- 1}\lbrack i\rbrack}}} \right)} \end{bmatrix}},{where}}}}}} & (24) \\ {{\xi_{1}\lbrack i\rbrack} = {{\sigma_{d_{1}}^{2}\lbrack i\rbrack} - {{r_{x_{1}d_{1}}^{\dagger}\lbrack i\rbrack}{R_{x_{1}}^{- 1}\lbrack i\rbrack}{{r_{x_{1}d_{1}}\lbrack i\rbrack}.}}}} & (25) \end{matrix}$

[0088] Then, the transformed signal T₁S₁ is given by the vector, $\begin{matrix} {{{T_{1}s_{1}} = {\left\lbrack {\sqrt{\left( {s_{1}^{\dagger}s_{1}} \right)}\quad 0\quad \ldots \quad 0} \right\rbrack^{\dagger} = {\delta_{1}\left\lbrack {1\quad 0\quad \ldots \quad 0} \right\rbrack}^{\dagger}}},} & (27) \end{matrix}$

[0089] Hence, the test statistic in Eq. (13a) can be re-expressed as $\begin{matrix} {\begin{matrix} {{{{Re}\left\{ {s_{1}^{\dagger}{R_{n}^{- 1}\lbrack i\rbrack} \times \lbrack i\rbrack} \right\}}} = {{{Re}\left\{ {s_{1}^{\dagger}{T_{1}^{\dagger}\left( {T_{1}{R_{n}\lbrack i\rbrack}T_{1}^{\dagger}} \right)}^{- 1}T_{1} \times \lbrack i\rbrack} \right\}}}} \\ {{= {{{Re}\left\{ {\left( {{\xi_{1}\lbrack i\rbrack} + {A_{1}^{2}\delta_{1}^{2}}} \right)^{- 1}{\delta_{1}^{*}\left( {u_{1}^{\dagger} - {{w_{GSC}^{\dagger}\lbrack i\rbrack}B_{1}}} \right)} \times \lbrack i\rbrack} \right\}}}},} \end{matrix}{{where},}} & (28) \\ {{w_{GSC}^{\dagger}\lbrack i\rbrack} = {{r_{x_{1}d_{1}}^{\dagger}\lbrack i\rbrack}{{R_{x_{1}}^{- 1}\lbrack i\rbrack}.}}} & (29) \end{matrix}$

[0090] From Eq.(28) the term δ₁ is a positive constant which can be moved to the other side of the test in Eq.(13a). Also the term (ξ₁[i] + A₁²δ₁²)⁻¹

[0091] defined in Eq.(26), does not vary significantly over the period NS when the signal A₁s₁ is comparable to the interference-plus-noise power level so that (ξ₁[i] + A₁²δ₁²)⁻¹

[0092] is approximately a positive constant over the same NS time period. Hence also the term (ξ₁[i] + A₁²δ₁²)⁻¹

[0093] can be moved to the other side of the test in Eq.(13a). Thus the test statistic q[i] in Eq.(13a) can be modified to a new test statistic y[i] given as follows: $\begin{matrix} {{{{{Re}\left\{ {y\lbrack i\rbrack} \right\}}} = {{{{Re}\left\{ {\left( {u_{1}^{\dagger} - {{w_{GSC}^{\dagger}\lbrack i\rbrack}B_{1}}} \right) \times \lbrack i\rbrack} \right\}}}\overset{\overset{H_{1}}{>}}{\underset{H_{0}}{<}}\gamma_{2}}},} & (30) \end{matrix}$

[0094] where the weight vector in Eq. (5) has been replaced by $\begin{matrix} {{u_{1}^{t} - {{w_{GSC}^{t}\lbrack i\rbrack}B_{1}}},} & \left( {30a} \right) \end{matrix}$

[0095] and y[i] which replaces q[i] in Eqs.(14) and (15) is defined by the modified likelihood ratio test $\begin{matrix} {{y\lbrack i\rbrack} = {\left( {u_{1}^{t} - {{w_{GSC}^{t}\lbrack i\rbrack}B_{1}}} \right) \times {\lbrack i\rbrack.}}} & \left( {30b} \right) \end{matrix}$

[0096] The block-diagram structure of this new test statistic is shown in FIG. 4. Evidently, this test statistic has the form of the classical sidelobe canceler, used in the past to suppress or cancel interferers or jamming of radars and communication systems. Also note that the modified test to determine î for synchronization in Eq.(15) is given by $\begin{matrix} {{{{Re}\left\{ {y\left\lbrack \hat{i} \right\rbrack} \right\}}} = {\max\limits_{{k\varepsilon}{({0,1,\quad {{\ldots \quad N\quad S} - 1}})}}{{{Re}\left\{ {y\left\lbrack {i - k} \right\rbrack} \right\}}}}} & \left( {30c} \right) \end{matrix}$

[0097] with q[i] replaced by y[i] in Eq.(30b).

[0098] From the test statistic in Eq.(30) the expression W_(GSC) is the only term to utilize the covariance matrix. It is easily verifiable that $\begin{matrix} {{{R_{x_{1}}\lbrack i\rbrack} = {{B_{1}{R_{n}\lbrack i\rbrack}B_{1}^{t}} = {{{B_{1}\left( {{R_{x}\lbrack i\rbrack} - {A_{1}^{2}s_{1}s_{1}^{t}}} \right)}B_{1}^{t}} = {B_{1}{R_{x}\lbrack i\rbrack}B_{1}^{t}}}}},} & (31) \\ {{r_{x_{1}d_{1}}\lbrack i\rbrack} = {{B_{1}{R_{n}\lbrack i\rbrack}s_{1}} = {{{B_{1}\left( {{R_{x}\lbrack i\rbrack} - {A_{1}^{2}s_{1}s_{1}^{t}}} \right)}s_{1}} = {B_{1}{R_{x}\lbrack i\rbrack}{s_{1}.}}}}} & (32) \end{matrix}$

[0099] These relations in Eqs. (31) and (32) demonstrate that the test statistic in Eq. (30) remains invariant to the presence or absence of a signal component in the observation vector x[i].

[0100] Demodulation System

[0101] Once synchronization is established, data demodulation is accomplished by the use of a MMSE detector [4, 5]. Let x[î], where i is the time phase or clock time defined in Eq. (15) at which synchronization occurs, be the observation vector obtained upon synchronization. Then, the estimate of the information symbol b₁ is obtained from the estimation statistic in Eq. (30) has the form, $\begin{matrix} {{{\hat{b}}_{1} = {{sgn}\left( {{Re}\left\{ {\left( {A_{1}s_{1}} \right)^{t}{R_{x}^{- 1}\left\lbrack \hat{i} \right\rbrack} \times \left\lbrack \hat{i} \right\rbrack} \right\}} \right)}},} & (33) \end{matrix}$

[0102] where sgn denotes the sign operator. Since the amplitude A₁ and the norm of the signal sequence, namely $\sqrt{s_{1}^{t}s_{1}}$

[0103] is positive, the estimate of b₁ can be simplified to $\begin{matrix} {{\hat{b}}_{1} = {{{sgn}\left( {{Re}\left\{ {u_{1}^{t}{R_{x}^{- 1}\left\lbrack \hat{i} \right\rbrack} \times \left\lbrack \hat{i} \right\rbrack} \right\}} \right)}.}} & (34) \end{matrix}$

[0104] However, for the modified test statistic in FIG. 4, the estimate of b₁ is obtained by replacing the weight vector u₁ ^(†)R_(x) ⁻¹[î] in Eq.(34) by the new weight vector in Eq.(30). Thus $\begin{matrix} {{\hat{b}}_{1} = {{{sgn}\left( {{Re}\left\{ {\left( {u_{1}^{t} - {{w_{GSC}^{t}\left\lbrack \hat{i} \right\rbrack}B_{1}}} \right) \times \left\lbrack \hat{i} \right\rbrack} \right\}} \right)}.}} & (35) \end{matrix}$

[0105] is the modified estimate of the information symbol to use hereafter in this invention. It should be noted that the term (u₁^(t) − w_(GSC)^(t)[î]B₁) × [î]

[0106] is used in common with both the synchronization system and the demodulation system. This term can be computed and stored during the acquisition process. It does not need to be recomputed for demodulation.

[0107] An exemplary implementation of the Receiver

[0108] Recall that x^((m))[i] is the observation vector at the sampling time iT_(s) of the m-th symbol. Assume that L approximately independent snapshots (samples) of the observation vector x^((m))[i] are available for the initial acquisition of the detector parameters. These data are given in matrix form by

X ₀ [i]Δ[X ⁽¹⁾ [i], . . . , x ^((L)) [i]].

[0109] The maximum likelihood estimator for R_(x)[i] is computed then to be ${{\hat{R}}_{x}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{x^{(m)}\lbrack i\rbrack}{x^{{(m)}*}\lbrack i\rbrack}}}} = {\frac{1}{L}{X_{0}\lbrack i\rbrack}{{X_{0}^{t}\lbrack i\rbrack}.}}}$

[0110] The two statistics needed to find w_(gsc) can be computed by the following: $\begin{matrix} {{{\hat{R}}_{x_{1}}\lbrack i\rbrack} = {{B_{1}{{\hat{R}}_{x_{1}}\lbrack i\rbrack}B_{1}^{t}} = {\frac{1}{L}B_{1}{X_{0}\lbrack i\rbrack}{X_{0}^{t}\lbrack i\rbrack}B_{1}^{t}}}} \\ {{\hat{r}}_{x_{1}d_{1}} = {{B_{1}{{\hat{R}}_{x}\lbrack i\rbrack}s_{1}} = {\frac{1}{L}B_{1}{X_{0}\lbrack i\rbrack}{X_{o}^{t}\lbrack i\rbrack}s_{1}}}} \end{matrix}$

[0111] By substitution of these two estimates into Eqs.(30) and (35), an adaptive version of the proposed receiver is obtained.

[0112] Lower Complexity with the Multistage Representation

[0113] Recently, rank-reduction methods have received considerable attention in the context of a Wiener filter [16] and in J. S. Goldstein and I. S. Reed, “Reduced-rank adaptive filtering,” IEEE Trans. Signal Processing, vol. 45, pp. 492-496, February 1997 [18], the contents of which are hereby expressly incorporated by reference, in which form the detection tests in Eqs.(30) and (35) can be applied. To achieve this, the observation vector is projected onto a lower dimensional subspace, and the Wiener filter is constrained to lie in this subspace. This procedure makes possible optimal signal detection and accurate signal estimation while allowing for a lower computational complexity and a smaller sample support.

[0114] In this section a reduced-rank version of the receiver is developed which is based on a new Wiener filter structure, called “multistage representation of the Wiener filter,” [16]. This multistage structure represents a pioneering breakthrough in that it achieves near full rank detection and estimation performance with often only a small number of stages. This can result in a substantial reduction of the computational burden and a rapid convergence in an adaptive implementation without any need for matrix inversion.

[0115] To achieve the desired multistage decomposition of the likelihood ratio test in Eq. (13a), successive orthogonal decompositions are applied to the observed data. Actually, the derivation of the test in Eq. (30) from Eq. (13a) can be considered to be the first stage of the multistage decomposition. To accomplish the second stage of the decomposition, the same technique is applied to the term x₁[i]=B₁x[i] and w_(GSC) defined in Eq.(29). First, define u₂[i] as the vector, $\begin{matrix} {{{u_{2}\lbrack i\rbrack}\overset{\Delta}{=}\frac{r_{x_{1}d_{1}}\lbrack i\rbrack}{\sqrt{{r_{x_{1}d_{1}}^{t}\lbrack i\rbrack}{r_{x_{1}d_{1}}\lbrack i\rbrack}}}},} & (36) \end{matrix}$

[0116] where, r_(x) ₁ _(d) ₁ [i] is the correlation defined in Eq. (22). Then, define a new nonsingular trans-formation T₂[i], similar to T₁ in (16), by $\begin{matrix} {{{T_{2}\lbrack i\rbrack} = \begin{bmatrix} {u_{2}^{t}\lbrack i\rbrack} \\ {B_{2}\lbrack i\rbrack} \end{bmatrix}},} & (37) \end{matrix}$

[0117] where the rows of the (N−2)×N matrix B₂[i] is the null space of u₂[i], i.e., B₂[i]u₂[i]=0. Thus, the new transformed vector under transformation T₂[i] is represented by $\begin{matrix} {{{T_{2}\lbrack i\rbrack}{x_{1}\lbrack i\rbrack}} = {\begin{bmatrix} {{u_{2}^{t}\lbrack i\rbrack}{x_{1}\lbrack i\rbrack}} \\ {{B_{2}\lbrack i\rbrack}{x_{1}\lbrack i\rbrack}} \end{bmatrix} = \begin{bmatrix} {d_{2}\lbrack i\rbrack} \\ {B_{2}\lbrack i\rbrack} \end{bmatrix}}} & (38) \end{matrix}$

[0118] in accordance with the definition in Eq. (19) for the first stage decomposition. The procedure for the decomposition of the likelihood ratio test in the first stage is repeated in the second stage. By following the same arguments that lead to Eqs. (28) and (29), the second stage decomposition of the likelihood ratio is calculated from Eq. (28) by the relations $\begin{matrix} \begin{matrix} {{y\lbrack i\rbrack} = {\left( {u_{1}^{t} - {{w_{GSC}^{t}\lbrack i\rbrack}B_{1}}} \right){x\lbrack i\rbrack}}} \\ {= \left( {u_{1}^{t} - {{\omega_{2}^{*}\lbrack i\rbrack}\left( {{u_{2}^{t}\lbrack i\rbrack} - {{r_{x_{2}d_{2}}^{t}\lbrack i\rbrack}{R_{x_{2}}^{- 1}\lbrack i\rbrack}{B_{2}\lbrack i\rbrack}B_{1}}} \right){x\lbrack i\rbrack}}} \right)} \\ {{= {{d_{1}\lbrack i\rbrack} - {{\omega_{2}^{*}\lbrack i\rbrack}\left( {{d_{2}\lbrack i\rbrack} - {{r_{x_{2}d_{2}}^{t}\lbrack i\rbrack}{R_{x_{2}}^{- 1}\lbrack i\rbrack}{x_{2}\lbrack i\rbrack}}} \right)}}},} \end{matrix} & (39) \end{matrix}$

[0119] where ${\omega_{2}\lbrack i\rbrack}\overset{\Delta}{=}{\quad{\frac{\delta_{2}\lbrack i\rbrack}{\xi_{2}\lbrack i\rbrack},{{\delta_{2}\lbrack i\rbrack} = {{\sqrt{{r_{x_{1}d_{1}}^{t}\lbrack i\rbrack}{r_{x_{1}d_{1}}\lbrack i\rbrack}}\quad {and}\quad {\xi_{2}\lbrack i\rbrack}} = {{\sigma_{d_{2}}^{2}\lbrack i\rbrack} - {{r_{x_{2}d_{2}}^{t}\lbrack i\rbrack}{R_{x_{2}}^{- 1}\lbrack i\rbrack}{{r_{x_{2}d_{2}}\lbrack i\rbrack}.}}}}}}}$

[0120] Also define an error signal ∈₂[i] as $\begin{matrix} {{\varepsilon_{2}\lbrack i\rbrack} = {{d_{2}\lbrack i\rbrack} - {{r_{x_{2}d_{2}}^{t}\lbrack i\rbrack}{R_{x_{2}}^{- 1}\lbrack i\rbrack}{{x_{2}\lbrack i\rbrack}.}}}} & (40) \end{matrix}$

[0121] The variance of ∈₂[i] in Eq. (40) is given by $\begin{matrix} {{\sigma_{\varepsilon_{2}}^{2}\lbrack i\rbrack} = {E{\left\{ {{\varepsilon_{2}\lbrack i\rbrack}{\varepsilon_{2}^{*}\lbrack i\rbrack}} \right\}.}}} & (41) \end{matrix}$

[0122] Thus, the substitution of Eq. (40) into Eq. (41) yields: $\begin{matrix} \begin{matrix} {{\sigma_{\varepsilon_{2}}^{2}\lbrack i\rbrack} = {E\left\{ {\left( {{d_{2}\lbrack i\rbrack} - {{r_{x_{2}d_{2}}^{t}\lbrack i\rbrack}{R_{x_{2}}^{- 1}\lbrack i\rbrack}{x_{2}\lbrack i\rbrack}}} \right)\left( {{d_{2}\lbrack i\rbrack} - {{r_{x_{2}d_{2}}^{t}\lbrack i\rbrack}{R_{x_{2}}^{- 1}\lbrack i\rbrack}{x_{2}\lbrack i\rbrack}}} \right)^{t}} \right\}}} \\ {= {{\sigma_{d_{2}}^{2}\lbrack i\rbrack} - {2{r_{x_{2}d_{2}}^{t}\lbrack i\rbrack}{R_{x_{2}}^{- 1}\lbrack i\rbrack}{r_{x_{2}d_{2}}\lbrack i\rbrack}} + {{r_{x_{2}d_{2}}^{t}\lbrack i\rbrack}{R_{x_{2}}^{- 1}\lbrack i\rbrack}{R_{x_{2}}\lbrack i\rbrack}{R_{x_{2}}^{- 1}\lbrack i\rbrack}{r_{x_{2}d_{2}}\lbrack i\rbrack}}}} \\ {= {{{\sigma_{d_{2}}^{2}\lbrack i\rbrack} - {{r_{x_{2}d_{2}}^{t}\lbrack i\rbrack}{R_{x_{2}}^{- 1}\lbrack i\rbrack}{r_{x_{2}d_{2}}\lbrack i\rbrack}}} = {{\xi_{2}\lbrack i\rbrack}.}}} \end{matrix} & (42) \end{matrix}$

[0123] Recall from Eq. (25) that $\begin{matrix} \begin{matrix} {{\xi_{1}\lbrack i\rbrack} = {{\sigma_{d_{1}}^{2}\lbrack i\rbrack} - {{r_{x_{1}d_{1}}^{t}\lbrack i\rbrack}{T_{2}^{t}\left( {T_{2}{R_{x_{1}}\lbrack i\rbrack}T_{2}^{t}} \right)}^{- 1}T_{2}{r_{x_{1}d_{1}}\lbrack i\rbrack}}}} \\ {{= {{\sigma_{d_{1}}^{2}\lbrack i\rbrack} - {{\xi_{2}^{- 1}\lbrack i\rbrack}{\delta_{2}^{2}\lbrack i\rbrack}}}},} \end{matrix} & (44) \end{matrix}$

[0124] Where ∈₁[i]=d₁[i]−r_(x) ₁ _(d) ₁ ^(†)[i]R_(x) ₁ ⁻¹[i]x₁[i] is defined similarly to ∈₂[i] in Eq. (40). From Eqs. (39) and (40), one obtains the relation

∈₁ [i]=y[i]=d ₁ [i]−ω ₂ ^(*) [i]∈ ₂ [i],  (43)

[0125] between ∈₁[i] and ∈₂[i]. Hence the variance ξ1[i] in Eq. (25) can be expressed further by $\begin{matrix} \begin{matrix} {{\xi_{1}\lbrack i\rbrack} = {{\sigma_{d_{1}}^{2}\lbrack i\rbrack} - {{r_{x_{1}d_{1}}^{t}\lbrack i\rbrack}{T_{2}^{t}\left( {T_{2}{R_{x_{1}}\lbrack i\rbrack}T_{2}^{t}} \right)}^{- 1}T_{2}{r_{x_{1}d_{1}}\lbrack i\rbrack}}}} \\ {{= {{\sigma_{d_{1}}^{2}\lbrack i\rbrack} - {{\xi_{2}^{- 1}\lbrack i\rbrack}{\delta_{2}^{2}\lbrack i\rbrack}}}},} \end{matrix} & (44) \end{matrix}$

[0126] thereby directly relating the variance ξ1[i] with the corresponding variance ξ1[i] of the second stage of the multistage decomposition.

[0127] A continuation of this decomposition process, extending Eq. (39), yields the N-stage likelihood ratio test in terms of only scalar quantities in recursive form as follows:

y[i]=d ₁ [i]−ω ₂ ^(*) [i](d ₂ [i]−ω ₃ ^(*) [i]( . . . ω _(N-1) ^(*) [i](d_(N-1) [i]−ω _(N) ^(*) [i]d _(N) [i]) . . . )).  (45)

[0128] More complete details of the multistage decomposition are developed in [16]; and J. S. Goldstein, I. S. Reed, and P. A. Zulch, “Multistage partially adaptive STAP CFAR detection algorithm, ” IEEE Trans. Aerosp. Electron. Syst., vol. 35, pp. 645-661, April 1999 [19], the contents of which are hereby expressly incorporated by reference.

[0129] Rank reduction is realized as a truncation of the full-scale structure of the formula in Eq. (45) at the M-th stage, where M<N. That is, the rank-M detector is obtained by stopping the decomposition at stage M, i.e. by setting B_(M)[i]=0. As consequence, ∈_(M)[i]=d_(M)[i] and ξ_(M)[i] = σ_(ε_(M))²[i] = σ_(d_(M))²[i].

[0130] The complete recursion procedure for the rank-M version of the likelihood ratio test in Eq. (13a) is summarized in Table 1 as a pseudocode (also given in [16] and FIG. 5). The exemplary block diagram of FIG. 5 illustrates the likelihood ratio test for M=4.

[0131] Table 1 shows recursion formulas for the reduced-rank likelihood ratio test. TABLE 1 Initialization: +TL, 16 ${u_{1} = \frac{s_{1}}{s_{1}}},$

B₁ = null(u₁), x₀[i] = x[i] Forward Recursion For j = 1 to M − 1 d_(j)[i] = u_(j)^(†)[i]x_(j − 1)[i]

x_(j)[i] = B_(j)[i]x_(j−1)[i] r_(x_(j)d_(j))[i] = E{x_(j)[i]d_(j)^(*)[i]}

δ_(j + 1)[i] = r_(x_(j)d_(j))[i]

${u_{j + 1}\lbrack i\rbrack} = {\frac{r_{x_{j}d_{j}}\lbrack i\rbrack}{{r_{x_{j}d_{j}}\lbrack i\rbrack}} = \frac{r_{x_{j}d_{j}}\lbrack i\rbrack}{\delta_{j + 1}\lbrack i\rbrack}}$

B_(j + 1)[i] = null(u_(j + 1)[i]) End Define x_(M−1)[i] = d_(M)[i] = ε_(M)[i] Backward Recursion σ_(d_(M))²[i] = E{d_(M)[i]²}

ξ_(M)[i] = σ_(d_(M))²[i], ω_(M)[i] = ξ_(M)⁻¹[i]δ_(M)[i].

For j = M − 1 to 2 σ_(d_(j))²[i] = E{d_(j)[i]²}

ξ_(j)[i] = σ_(d_(j))²[i] − ξ_(j + 1)⁻¹[i]δ_(j + 1)²[i]

ω_(j)[i] = ξ_(j)⁻¹[i]δ_(j)[i]

End

[0132] Adaptive Realization of the Multistage Decomposition of the Test

[0133] Usually, the covariance matrix for an adaptive filter is not known a priori with any certainty. Thus to perform the detection test in Eq. (30), it is necessary to find a statistical estimate {circumflex over (R)}_(x)[i] to substitute for R_(x)[i]. In addition, the inversion of {circumflex over (R)}_(x)[i] is needed for each iT_(s) where 0≦i≦NS −1. This involves high computational complexity, and it is not a trivial task to accomplish.

[0134] However, the multistage structure that is introduced in the previous section not only eliminates the task of covariance matrix inversion, but its adaptive versions can be realized directly from the observation data without the explicit estimate of the covariance matrix, given in Eq. (47). Furthermore, when the code vector of the desired user is known to the demodulator, the coefficients of the adaptive multistage detector, i.e., u_(j), B_(j) and ω_(j), are determined without any knowledge of the reference information symbols.

[0135] In [6, 7], a training-based algorithm for the multistage decomposition is introduced. Using this algorithm, one does not need to calculate an estimate of the covariance matrix. The coefficients of the detector can be estimated directly from the received data vectors and then be used to demodulate the data after the training period. Also, in this algorithm, the dimension of the blocking matrix {circumflex over (B)}_(j)[i] can be kept the same (i.e., in an N×N matrix form) for every stage. Evidently, such a blocking matrix can be obtained from the following formula: $\begin{matrix} {{{{\hat{B}}_{j}\lbrack i\rbrack} = {I - {{{\hat{u}}_{j}\lbrack i\rbrack}{{\hat{u}}_{j}^{t}\lbrack i\rbrack}}}},} & (48) \end{matrix}$

[0136] where û_(j)[i] is on estimate of unit vector u_(j)[i] in Table. 1.

[0137] In this manner, the lengths of the registers needed to store the blocking matrices and vectors can be kept the same for every stage, a fact that is very desirable for either a hardware or software realization. To obtain this algorithm let $\begin{matrix} {{{d_{j}^{t}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{{\hat{d}}_{j}^{(1)}\lbrack i\rbrack},\ldots \quad,{{\hat{d}}_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{{\hat{u}}_{j}^{t}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}}}},} & (49) \\ {{{X_{j}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{x_{j}^{(1)}\lbrack i\rbrack},\ldots \quad,{x_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{{\hat{B}}_{j}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}}}},} & (50) \end{matrix}$

[0138] The estimate of the cross-correlation vector {circumflex over (r)}_(x) ₁ _(d) ₁ [i] is computed then as $\begin{matrix} \begin{matrix} {{{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack} = {{{{\hat{B}}_{j}\lbrack i\rbrack}{{\hat{R}}_{x_{j - 1}}\lbrack i\rbrack}{{\hat{u}}_{j}\lbrack i\rbrack}} = {\frac{1}{L}{{\hat{B}}_{j}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}{X_{j - 1}^{t}\lbrack i\rbrack}{{\hat{u}}_{j}\lbrack i\rbrack}}}} \\ {= {{\frac{1}{L}{X_{j}\lbrack i\rbrack}{d_{j}\lbrack i\rbrack}} = {\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{x_{j}^{(m)}\lbrack i\rbrack}{{d_{j}^{(m)}\lbrack i\rbrack}^{*}.}}}}}} \end{matrix} & (51) \end{matrix}$

[0139] Also let the estimate variance of d₁[i] be computed by ${{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} = {\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{{\hat{d}}_{j}^{(m)}\lbrack i\rbrack}}^{2}}}},{2 \leq j \leq {M.}}$

[0140] Table 2 depicts a training-based multistage decomposition algorithm. TABLE 2 Assume that L independent samples of the observation vector x^((m))[i] are available for the initial acquisition. Let X₀[i] Δ [x⁽¹⁾[i], . . ., x^((L))[i]] Forward Recursion Initialization: Let ${\hat{u}}_{1} = \frac{s_{1}}{s_{1}}$

and B̂₁ = I − û_(j)û_(j)^(†)

For j = 1 to (M − 1) Calculate d_(j) and x_(j) ${{d_{j}^{\dagger}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{{\hat{d}}_{j}^{(1)}\lbrack i\rbrack},\ldots,{{\hat{d}}_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{{\hat{u}}_{j}^{\dagger}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}}}},$

${{X_{j}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{x_{j}^{(1)}\lbrack i\rbrack},\ldots,{x_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{{\hat{B}}_{j}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}}}},$

Calculate the (j + 1) − th stage basis vector, ${{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}{{x_{j}^{(m)}\lbrack i\rbrack}{d_{j}^{(m)}\lbrack i\rbrack}^{*}}}} = {\frac{1}{L}{X_{j}\lbrack i\rbrack}{d_{j}\lbrack i\rbrack}}}$

δ̂_(j + 1)[i] = r̂_(x_(j)d_(j))[i]

${{\hat{u}}_{j + 1}\lbrack i\rbrack} = \frac{{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}\lbrack i\rbrack}$

Determine the (j + 1) − th blocking matrix {circumflex over (B)}_(j+1) B̂_(j + 1)[i] = I − û_(j + 1)[i]  û_(j + 1)^(†)[i]

End Compute d_(M)^((m))[i]

and set it equal to ε_(M)^((m))  [i]

${{d_{M}^{\dagger}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{{\hat{d}}_{M}^{(1)}\lbrack i\rbrack},\ldots,{{\hat{d}}_{M}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{e_{M}^{\dagger}\lbrack i\rbrack} = {{{\hat{u}}_{M}^{\dagger}\lbrack i\rbrack}{X_{M - 1}\lbrack i\rbrack}}}}},$

Backward Recursion ${{{\hat{\sigma}}_{d_{M}}^{2}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}{{{\hat{d}}_{M}^{(m)}\lbrack i\rbrack}}^{2}}} = {{\hat{\xi}}_{M}\lbrack i\rbrack}}},{{{\hat{\omega}}_{M}\lbrack i\rbrack} = {{{\hat{\xi}}_{M}^{- 1}\lbrack i\rbrack}{{\hat{\delta}}_{M}\lbrack i\rbrack}}}$

For j = M − 1 to 2 Estimate the variance of d_(j)[i] ${{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} = {\frac{1}{L}{\sum\limits_{m = 1}^{L}{{{\hat{d}}_{j}^{(m)}\lbrack i\rbrack}}^{2}}}$

Estimate the variance of ε_(j) ${{\hat{\xi}}_{j}\lbrack i\rbrack}\overset{\Delta}{=}\quad {{{\hat{\sigma}}_{\varepsilon_{j}}^{2}\lbrack i\rbrack} = {{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} - {{{\hat{\xi}}_{j + 1}^{- 1}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}^{2}\lbrack i\rbrack}}}}$

Calculate the j − th scalar Wiener filter {circumflex over (ω)}_(j)[i] ${{\hat{\omega}}_{j}\lbrack i\rbrack} = \frac{{\hat{\delta}}_{j}\lbrack i\rbrack}{{\hat{\xi}}_{j}\lbrack i\rbrack}$

End

[0141] Then the variance of the error {circumflex over (ξ)}_(j)[i] can be obtained from the difference equation, $\begin{matrix} {{{\hat{\xi}}_{j}\lbrack i\rbrack} = {{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} - {{{\hat{\xi}}_{j + 1}^{- 1}\lbrack i\rbrack}{{{\hat{\delta}}_{j + 1}^{2}\lbrack i\rbrack}.}}}} & (52) \end{matrix}$

[0142] The rank-M algorithm shown in [7] is summarized in Table. 2. For the blocking matrix {circumflex over (B)}_(j)[i], given in Eq. (48) in Table. 2, one observes that the matrix multiplications required to compute X_(j)[i] are given in Eq. (50). These matrix multiplications can be avoided by the substitution of {circumflex over (B)}_(j)[i] into Eq. (50). That is, $\begin{matrix} {{X_{j}\lbrack i\rbrack} = {{{{\hat{B}}_{j}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}} = {\left( {I - {{{\hat{u}}_{j}\lbrack i\rbrack}{{\hat{u}}_{j}^{t}\lbrack i\rbrack}}} \right){X_{j - 1}\lbrack i\rbrack}}}} \\ {= {{{X_{j - 1}\lbrack i\rbrack} - {{{\hat{u}}_{j}\lbrack i\rbrack}{{\hat{u}}_{j}^{t}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}}} = {{X_{j - 1}\lbrack i\rbrack} - {{{\hat{u}}_{j}\lbrack i\rbrack}{{\hat{d}}_{j}^{t}\lbrack i\rbrack}}}}} \end{matrix}$

[0143] Using this result, a further simplified version of Table 2 is given in Table 3. Note that this new structure no longer requires the calculation of a blocking matrix and the computational complexity is reduced significantly.

[0144] In this invention, an iterative algorithm of the multistage decomposition is developed. Instead of estimating the parameters in the batch mode, the parameters also can be estimated iteratively. By this means, the coefficients of the filter are updated every time that data are received. Thus, the filter can more rapidly keep track adaptively of the changes in the interference environment.

[0145] An Iterative Version of the Multistage Adaptive Filter

[0146] In order to afford the possibility of following the statistical variations of the observed data when the detector operates in a non-stationary environment, a weighting factor is often used to ensure that data in the distant past are forgotten. A special form of weighting that is commonly used is the exponential weighting factor. As shown in Simon Haykin, Adaptive Filter Theory, Prentice-Hall, Upper Saddle River, N.J., 1996, the contents of which are hereby expressly incorporated by reference [20], an estimate of the cross-correlation vector {circumflex over (r)}_(x) _(j) _(d) _(j) [i] can be expressed as $\begin{matrix} {{{{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack} = {\sum\limits_{m = 1}^{n}\quad {\left( {1 - \alpha} \right)^{n - m}{x_{j}^{m}\lbrack i\rbrack}{d_{j}^{(m)}\lbrack i\rbrack}^{*}}}},} & (53) \end{matrix}$

[0147] where α is a positive constant less than 1. The inverse of α is, roughly speaking, a measure of the memory of the algorithm. The special case, when α approaches zero, corresponds to infinite memory.

[0148] Table 3 shows a simplified training-based batch-mode multistage decomposition algorithm. TABLE 3 Assume that L independent samples of the observation vector x^((m))[i] are available for the initial acquisition. Let X₀[i] Δ [x⁽¹⁾[i], . . ., x^((L))[i]] Forward Recursion Initialization: Let ${\hat{u}}_{1} = \frac{s_{1}}{s_{1}}$

and x₀[i] = x[i] For j = 1 to (M − 1) Calculate d_(j) and x_(j) d_(j)[i] = û_(j)^(†)[i]x_(j − 1)[i]

x_(j)[i] = x_(j − 1)[i] − û_(j)[i]d_(j)[i]

${{d_{J}^{\dagger}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{{\hat{d}}_{J}^{(1)}\lbrack i\rbrack},\ldots,{{\hat{d}}_{J}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{{\hat{u}}_{j}^{\dagger}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}}}},$

${X_{J}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{{\hat{x}}_{J}^{(1)}\lbrack i\rbrack},\ldots,{x_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{X_{j - 1}\lbrack i\rbrack} - {{{\hat{u}}_{j}\lbrack i\rbrack}{d_{j}^{\dagger}\lbrack i\rbrack}}}}$

Calculate the (j + 1) − th stage basis vector, ${{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}{{x_{j}^{(m)}\lbrack i\rbrack}{d_{j}^{(m)}\lbrack i\rbrack}^{*}}}} = {\frac{1}{L}{X_{j}\lbrack i\rbrack}{d_{j}\lbrack i\rbrack}}}$

δ̂_(j + 1)[i] = r̂_(x_(j)d_(j))[i]

${{\hat{u}}_{j + 1}\lbrack i\rbrack} = \frac{{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}\lbrack i\rbrack}$

End Compute d_(M)^((m))[i]

and set it equal to ε_(M)^((m))  [i]

${{d_{M}^{\dagger}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{{\hat{d}}_{M}^{(1)}\lbrack i\rbrack},\ldots,{{\hat{d}}_{M}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{e_{M}^{\dagger}\lbrack i\rbrack} = {{{\hat{u}}_{M}^{\dagger}\lbrack i\rbrack}{X_{M - 1}\lbrack i\rbrack}}}}},$

Backward Recursion Let ${{{\hat{\sigma}}_{d_{M}}^{2}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}{{{\hat{d}}_{M}^{(m)}\lbrack i\rbrack}}^{2}}} = {{\hat{\xi}}_{M}\lbrack i\rbrack}}},{{{\hat{\omega}}_{M}\lbrack i\rbrack} = {{{\hat{\xi}}_{M}^{- 1}\lbrack i\rbrack}{{\hat{\delta}}_{M}\lbrack i\rbrack}}}$

For j = M − 1 to 2 Estimate the variance of d_(j[i]) ${{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} = {\frac{1}{L}{\sum\limits_{m = 1}^{L}{{{\hat{d}}_{j}^{(m)}\lbrack i\rbrack}}^{2}}}$

Estimate the variance of ε_(j) ${{\hat{\xi}}_{j}\lbrack i\rbrack}\overset{\Delta}{=}\quad {{{\hat{\sigma}}_{\varepsilon_{j}}^{2}\lbrack i\rbrack} = {{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} - {{{\hat{\xi}}_{j + 1}^{- 1}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}^{2}\lbrack i\rbrack}}}}$

Calculate the j − th scalar Wiener filter by {circumflex over (ω)}_(j)[i] ${{\hat{\omega}}_{j}\lbrack i\rbrack} = \frac{{\hat{\delta}}_{j}\lbrack i\rbrack}{{\hat{\xi}}_{j}\lbrack i\rbrack}$

End

[0149] The summation on the right hand side of Eq. (53) can be written as the difference or iterative equation. $\begin{matrix} \begin{matrix} {{{\hat{r}}_{x_{j}d_{j}}^{(n)}\lbrack i\rbrack} = {{\left( {1 - \alpha} \right)\left\lbrack {\sum\limits_{m = 1}^{n - 1}\quad {\left( {1 - \alpha} \right)^{n - 1 - m}{x_{i}^{(m)}\lbrack i\rbrack}{d_{j}^{(m)}\lbrack i\rbrack}}} \right\rbrack} + {{x_{j}^{(n)}\lbrack i\rbrack}{d_{j}^{(n)}\lbrack i\rbrack}}}} \\ {{= {{\left( {1 - \alpha} \right){{\hat{r}}_{x_{j}d_{j}}^{({n - 1})}\lbrack i\rbrack}} + {{x_{j}^{(n)}\lbrack i\rbrack}{d_{j}^{(n)}\lbrack i\rbrack}}}},} \end{matrix} & (54) \end{matrix}$

[0150] where r̂_(x_(j)d_(j))^((n − 1))[i]

[0151] is the previous value of r̂_(x_(j)d_(j))^((n))[i],

[0152] and the term x_(j)^((n))[i]d_(j)^((n))[i]^(*)

[0153] is obtained from the new data. Hence, for each iteration, only two quantities (r̂_(x_(j)d_(j))^((n − 1))[i]  and  x_(j)^((n))[i]d_(j)^((n))[i]^(*))

[0154] are necessary for updating r̂_(x_(j)d_(j))^((n))[i].

[0155] The length of the observation-data that contributes to the estimate r̂_(x_(j)d_(j))^((n))[i],

[0156] is determined by the weighting factor ${\alpha \quad \underset{\underset{\_}{\_}}{\Delta}\quad \frac{1}{L}},$

[0157] where L is the time constant corresponding to the length of the batch-mode in Tables 2 and 3.

[0158] The exponential weighting factor is substituted in the algorithm in Table 3. This results in the iterative algorithm shown in Table 4. The algorithms in Tables 3 and 4 do not require any need for matrix multiplications. Also in order to find the estimate î, the time phase interval in Eq. (30c) at which the information of user 1 is found, the algorithm in Table 4 is realized as an IIR adaptive filter bank while the algorithms in Tables. 1, 2 and 3 utilize FIR adaptive filter banks which need substantially more computer memory and computation to realize.

[0159] The time phase acquisition process to find the estimate î, defined in Eq. (30c), is illustrated by the conceptual block diagram shown in the FIG. 7. The composition of the data vectors in the exemplary block diagram of FIG. 7 IS shown in FIG. 6. The observation data vectors are obtained by sliding a window of length N through the original data. The test statistic y^((k))[i] can be derived by the subroutine shown in the FIG. 8. In addition, the conceptual block diagram to find the value of i=î that achieves the maximum value of ¦Re{y[i]}¦ is found in FIG. 9. An exemplary algorithm for finding the maximization in Eq.(30c) is shown in FIG. 9A. Finally, FIG. 10 shows the block diagram that is used to demodulate the signal of the desired user.

[0160] Numerical Results

[0161] In this section simulations were conducted to demonstrate the performance of the proposed asynchronous CDMA receiver. An asynchronous BPSK DS-CDMA system with the number of users K=6 is considered in these simulations. The spreading sequence of each user is a Gold sequence of length N=31 (see Appendix A). A single desired user, say user 1, is acquired and demodulated in the presence of multiple-access interference. Table 4 depicts an exemplary pseudo-code of the iterative multistage decomposition algorithm. TABLE 4 Let k be the k − th clock time, where k = 1 is the first time the data is observed. Also let α be the memory or time constant of the algorithm. For k = 1 to n r̂_(x₀d₀)^((k))[i] = s₁,

${{\hat{u}}_{1}^{(k)}\lbrack i\rbrack} = \frac{s_{1}}{s_{1}}$

δ̂₁^((k))[i] = s₁,

x₀^((k))[i]

is the received vector. Forward Recursion For j = 1 to M − 1 d_(j)^((k))[i] = û_(j)^((k))[i]^(†)x_(j − 1)^((k))[i]

x_(j)^((k))[i] = x_(j − 1)^((k))[i] − û_(j)^((k))[i]d_(j)^((k))[i]

Calculate the (j + 1) − th stage basis vector, r̂_(x_(j)d_(j))^((k))[i] = (1 − α)r̂_(x_(j)d_(j))^((k − 1))[i] + x_(j)^((k))[i]d_(j)^((k))[i]^(*),

δ̂_(j + 1)^((k))[i] = r̂_(x_(j)d_(j))^((k))[i]

${{\hat{u}}_{j + 1}^{(k)}\lbrack i\rbrack} = \frac{{\hat{r}}_{x_{j}d_{j}}^{(k)}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}^{(k)}\lbrack i\rbrack}$

End ε_(M)^((k))[i] = d_(M)^((k))[i]^(†) = û_(M)^((k))[i]^(†)x_(M − 1)^((k))[i]

Backward Recursion For j = M to 2 Estimate the variance of ε_(j)^((k))[i]

ξ̂_(j)^((k))[i] = (δ̂_(ε_(j))^((k)))²[i] = (1 − α)ξ̂_(J)^((k − 1))[i] + ε_(J)^((k))[i]²

Calculate the j − th scalar Wiener filter ω̂_(J)^((k))[i]

by ${{\hat{\omega}}_{j}^{(k)}\lbrack i\rbrack} = \frac{{\hat{\delta}}_{J}^{(k)}\lbrack i\rbrack}{{\hat{\xi}}_{j}^{(k)}\lbrack i\rbrack}$

Calculate the (j − 1) − th error signal ε_(j − 1)^((k))[i]

by ε_(j − 1)^((k))[i] = d_(j − 1)^((k)  )[i] − ω̂_(j)^((k))[i]^(*)ε_(j)^((k))[i]

End The output at time k − th is y^((k))[i] = ε₁^((k))[i]

End

[0162] The power ratio between each of the five interfering users and the desired user is designated the MAI level. In this simulation all interfering users are assumed to have the same power ratio relative to the desired user. This power ratio is denoted by a quantity called the near-far ratio (NFR), defined by $\begin{matrix} {{{NFR} = \frac{A_{k}^{2}}{A_{1}^{2}}},} & (55) \end{matrix}$

[0163] where the subscript ‘k’ denotes user k; k=1 is the user of interest. For convenience and simplicity it is assumed in the simulations that the propagation delays of the different users are multiples of T_(c). Note that this assumption is not necessary if the sampling rate is higher than 1/T_(C).

[0164] First, the performance of the asynchronous CDMA receiver is found under the assumption that the covariance matrix is known at the receiver. Even though an exact estimation of the covanance matrix is not possible to achieve practically in a real communication system, this experiment provides an upper bound on the performance of the asynchronous CDMA receiver. The algorithm in Table I is used for this case.

[0165] In FIG. 11, the probability of correct synchronization and the probability of correct demodulation are presented as a function of the signal-to-white noise ratio (Eb/No) under the perfect power-control scenano, i.e., all users have the same signal power (NFR=0 dB). In this case the dimension of the full-rank receiver is equal to N=31. Demodulation is accomplished by the use of the estimate of the propagation delay that is obtained from the synchronization system. It is shown in FIG. 11 (NFR=0 dB) that the detector performs better than the conventional detector. Actually, the conventional detector can be considered to be the rank 1 version of the proposed receiver. It is demonstrated in this figure that a rank 2 filter already gains a significant improvement over the conventional detector. This improvement can be even more when the near-far ratio (NFR) is higher. A rank 3 filter achieves almost the same performance as the full rank (rank 31) filter.

[0166]FIG. 12 demonstrates the probability of correct synchronization and the probability of correct demodulation in terms of Eb/No under the near-far situation of NFR=3 dB. All of the other parameters are identical to those used in FIG. 11. Again the covariance matrix is assumed to be known. When the MAI becomes more severe, the receiver performs significantly better than the conventional detector. However, a greater rank (rank 4) is necessary in order to achieve an almost full-rank performance.

[0167] The performance of the adaptive implementation of the receiver for the batch algorithm (FIR), given in Table. 3, is shown in FIGS. 13 to 16 with different scenarios for each figure. The different scenarios used in these simulation are summarized in Table 5. TABLE 5 Exemplary scenarios for testing the adaptive multistage decomposition. N K L NFR 31 6 3N 0 dB 31 6 3N 3 dB 31 6 6N 0 dB 31 6 6N 3 dB

[0168] In FIGS. 13(a)-13(c), (NFR=0 dB and L=⅓ N) it is shown that rank 2 of receiver performs much better than the conventional detector. The case of rank 2 provides almost the same performance as the full-rank case while rank 3 outperforms the full-rank case. This is due to a lack of training samples in the full-rank case needed to obtain a good estimate of the covariance matrix. As previously stated, the reduced-rank version of the proposed detector requires a smaller number of samples to achieve synchronization and demodulation. FIG. 13(a) shows the probability of correct synchronization vs. signal-to-white noise ratio for k=6, N=31, and NFR=0 dB. FIG. 13(b) depicts the probability of correct demodulation vs. signal-to-white noise ratio for k=6, N=31, and NFR=0 dB

[0169] However, for the more severe MAI (NFR=3 dB) a greater rank is needed in order to achieve the same or better performance than the full-rank case. This is shown in FIGS. 14(a) and 14(b). By examining FIGS. 13 to 16 one can note that the full-rank receiver needs a larger amount of sample support to perform close to the known covariance matrix case while the reduced-rank receiver requires a smaller number of samples. The required computations to realize the adaptive full-rank receiver is sizeable due to the necessary matrix inversions, especially when the processing gain N of the CDMA system is larger than N=31.

[0170]FIGS. 15a and 15B show the batch algorithm in Table 3 with number of training samples L=6 N. FIG. 15a shows a graph for the probability of correct synchronization vs. signal to white noise ratio for K=6, N=31, and NFR is 0 dB. FIG. 15b shows a graph for the probability of correct demodulation vs. signal to white noise ratio for K=6, N=31, and NFR is 0 dB. FIGS. 16a and 16B show the Batch algorithm in Table 3 with number of training samples L=6 N. FIG. 16a shows a graph for the probability of correct synchronization vs. signal to white noise ratio for K=6, N=31, and NFR is 3 dB. FIG. 16b shows a graph for the probability of correct demodulation vs. signal to white noise ratio for K=6, N=31, and NFR is 3 dB.

[0171] Finally, the performance of the iterative or IIR algorithm of the receiver in Table 4 is shown in FIGS. 17 and 18 with α=⅓ N and FIGS. 19 and 20 with α=⅙ N. Also for these two cases the near-far ratios are set respectively to 0 dB and 3 dB. FIG. 19a shows the probability of correct synchronization vs. signal to white noise ratio for K=6, N=31, and NFR=0 dB, and FIG. 19a shows the probability of correct demodulation vs. signal to white noise ratio for K=6, N=31, and NFR 0 dB. FIG. 20a shows the probability of correct synchronization vs. signal to white noise ratio for K=6, N=31, and NFR=3 dB, and FIG. 20b shows the probability of correct demodulation vs. signal to white noise ratio for K=6, N=31, and NFR=3 dB.

[0172] For the equal power case (NFR=0 dB), the results show that the reduced-rank iterative version of the receiver outperforms the full-rank receiver, especially when the number of training samples is small. However, when the MAI become more severe (NFR=3 dB), the performance of the reduced-rank iterative receiver is degraded. A larger number of training samples is needed to obtain a better performance. When compared to the batch algorithm in Table 3 the recursive algorithm is computationally and physically much simpler, but does not perform as well as the batch algorithm. This is consistent with the results reported in [6]. To obtain a better performance, the iterative algorithm requires an equivalent number of samples as the full-rank case but with a much simpler computation. A more sophisticated iterative adaptive-weight filter algorithm can be used to obtain a better performance. However, in all cases the reduced-rank adaptive filter bank outperforms the conventional matched-filter detector.

[0173] In summary, in this invention an adaptive near-far resistant receiver for an asynchronous CDMA system is developed without the use of prior synchronization. It does not require a training period or data-free observations. Only knowledge of the spreading sequence of the desired user is necessary. These are the requirements needed by the conventional receiver of an asynchronous CDMA system. Due to the near-far resistant property of the receiver, this new CDMA receiver does not require the accurate power control that is needed in a conventional receiver system.

[0174] It is shown that the receiver obtains a better performance than that of the conventional receiver in all simulations. Though an optimum adaptive receiver that uses a full-rank covariance matrix can suppress multiple-access interference that comes from the co-existing users, its practical implementation generally is not feasible due to a lack of the sample support that is needed to estimate the covariance matrix and the substantial computations needed to invert this matrix.

[0175] To remedy this situation a lower-complexity adaptive receiver is developed that is based on the concept of the reduced-rank multistage decomposition [16]. With this method one can design a lower-complexity receiver without a significant loss in performance as compared with the full-rank system. Also the number of samples, needed to initially estimate the filter coefficients, is considerably decreased. This fact translates into an enhancement of the bandwidth efficiency of the underlying communication system or the potential performance gain when the size of the sample support for the adaptation of the filter coefficients is limited.

[0176] Finally, an iterative version of the filter that utilizes the multistage decomposition is developed. This makes possible a receiver that can be realized as a bank of iterative adaptive filters that are multiplexed in time sequence. By this means, the coefficients of the filter are updated every time new data are received. The implementation of the iterative version requires a substantially smaller memory size than the earlier FIR versions. Although, the iterative version does not perform as well as the batch version, it is of practical importance because of its much simpler realization. The convergence rate of the iterative filters used for the filter bank can be improved by the used of higher order iterative filters in this DS-CDMA system. However the bank of iterative adaptive filters developed in this invention evidently results in a very fast, efficient and effective near-far resistant asynchronous CDMA receiver. As demonstrated above, using only the first 2 stages of the proposed receiver (the rank 2 receiver) gains significant improvement in all cases over the conventional detector (which is equivalent to the first stage of the proposed receiver) while also the computational complexity of the rank 2 filter is only minimally greater than the conventional detector.

[0177] Simulation results show that the receiver of the present invention can significantly outperform the conventional DS-CDMA receiver that uses a standard matched filter for acquisition. When compared to the MMSE type receiver, the receiver can achieve a similar performance level without the requirement of synchronization or known propagation delays. Some applications for the present invention include digital wireless networks including home networking, and any other wireless application that uses code modulation.

[0178] It will be recognized by those skilled in the art that various modifications may be made to the illustrated and other embodiments of the invention described above, without departing from the broad inventive scope thereof. It will be understood therefore that the invention is not limited to the particular embodiments or arrangements disclosed, but is rather intended to cover any changes, adaptations or modifications which are within the scope and spirit of the invention.

Appendix A

[0179] A. Gold Sequence Generator

[0180] Due to the large range of values of the cross-correlations of the maximum-length shift-register sequence, sometimes called m-sequence, they usually are not adopted to CDMA-like applications. PN-sequences with better periodic cross-correlation properties than m-sequences are given by the sequences of Gold (1967, 1968) and Kasami (1966), where the two-values of their sequences are +1 and −1. In Robert Gold, “Maximal recursive sequences with 3-valued recursive cross-correlation functions,” IEEE Trans. on Inform. Theory, vol. 41, pp. 154-156, January 1968 [21], the contents of which are hereby expressly incorporated by reference, it was proved that certain pairs of m-sequences of length N exhibit a three-valued cross-correlation function [21] with the values −1, −t(m), t(m) −2}, where ${t(m)} = \begin{matrix} {2^{{({m + 2})}/2} + 1} & \left( {{odd}\quad m} \right) \\ {2^{{({m + 2})}/2} + 1} & \left( {{even}\quad m} \right) \end{matrix}$

[0181] and where m denotes an m-stage shift register of sequence length N=2^(m)−1.

[0182] Consider the generation of the Gold sequences of length N=31 =2⁵−1 with the pair of preferred sequences, that are obtained from the book by Peterson and Weldon (W. W. Peterson and E. J. Weldon, Error Correcting Codes, MIT Press, Cambridge, Mass., 1972 [22], the contents of which are hereby expressly incorporated by reference) are described by the polynomials,

g ₁(D)=D ⁵ +D ²+1,

g ₂(D)=D ⁵ +D ⁴ +D ³ +D ²+1

[0183] Let b and b′ represent the two m-sequences with period N=31 that are generated by g₁(D) and g₂(D), respectively. The Gold family for the sequences of length 31 comprises of 2^(m)+1=33 sequences given in R. L. Peterson, R. E. Ziemer, and D. E. Borth, Introduction to Spread Spectrum Communications, Prentice Hall, Englewood Cliffs, N.J., 1995 [23], the contents of which are hereby expressly incorporated by reference, by

G={b}∪{b′}∪{{b+D ^(τ) b′}¦0≦τ≦N−1},  (56)

[0184] where the term D^(τ)b′ represents a phase shift of the m-sequence b′ by τ units and “∪” denotes set union. The sequences s₁ and S2 in the example of Section 2 are derived by setting τ in Eq. (56) equal to 0 and 1, respectively. 

What is claimed is:
 1. A method performed by a computer for filtering interference and noise of an asynchronous wireless signal comprising the steps of: receiving an asynchronous data vector including a spreading code; using the received asynchronous data vector, updating weight coefficients of an adaptive filter without prior knowledge of synchronization of synchronization of the spreading code; using the updated weight coefficients information to determine synchronization of the spreading code; and demodulating the output of the filter using the determined synchronization of the spreading code for obtaining a filtered data vector.
 2. The method of claim 1, further comprising the step of dividing the data vector represented by x[i] into two channels x₁[i] and d₁[i] using a transformation T₁ on x[i], represented by T₁x[i], wherein the transformed data vector x[i] does not contain information about a designated sender's spreading code s₁, and d₁[i] contains primarily only information about the spreading code s₁ and residual data from correlation of s₁ and x[i].
 3. The method of claim 2, wherein the transformation T₁ is defined by $\begin{matrix} {{T_{1} = \begin{bmatrix} u_{1}^{\dagger} \\ B_{1} \end{bmatrix}},} & (16) \end{matrix}$

where B₁ is a blocking matrix whose rows are composed of any orthonormal basis set of the nullspace of the normalized signal vector $\begin{matrix} {{u_{1} = {s_{1}/{\sqrt{s_{1}^{t}s_{1}}.}}},} & (17) \end{matrix}$

and where B₁u₁=B₁s₁=0.
 4. The method of claim 1, wherein the step of determining synchronization comprises the steps of: computing î, the time occurrence of the information data bit, from the equation; $\begin{matrix} {{{{{Re}\left\{ {y\left\lbrack \hat{i} \right\rbrack} \right\}}} = {\max\limits_{k \in {\{{0,1,\quad \ldots \quad,\quad {{NS} - 1}}\}}}{{{Re}\left\{ {y\left\lbrack {i - k} \right\rbrack} \right\}}}}},} & \left( {30c} \right) \end{matrix}$

where y[i]=w[i]^(†)x[i] is filtered output from a likelihood ratio test at clock time i detecting sequentially maximum of all likelihood tests in the set Y[i] given by Y[i]={¦Re{y[i]}¦, . . . , Re{y[i−NS+1]}¦}, where N is number of chips in the spreading code and S is number of samples per chip time.
 5. The method of claim 1, wherein the step of updating weight coefficients comprises the steps of: computing maximum likelihood estimator for R_(x)[i] ${{\hat{R}}_{x}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}{{x^{(m)}\lbrack i\rbrack}{x^{{(m)}*}\lbrack i\rbrack}}}} = {\frac{1}{L}{X_{0}\lbrack i\rbrack}{{X_{0}^{t}\lbrack i\rbrack}.}}}$

 wherein, x^((m))[i] is an observation vector at a sampling time iT_(s) of the mth symbol, L is approximate independent samples of the observation vector x^((m))[i] for the initial acquisition of detector parameters, and the data is given in matrix form by X ₀ [i]Δ[x ⁽¹⁾ [i], . . . , x ^((L)) [i]]; computing ${{\hat{R}}_{x_{1}}\lbrack i\rbrack} = {{B_{1}{{\hat{R}}_{x_{1}}\lbrack i\rbrack}B_{1}^{t}} = {\frac{1}{L}B_{1}{X_{0}\lbrack i\rbrack}{X_{0}^{t}\lbrack i\rbrack}B_{1}^{t}\quad {and}}}$ ${\hat{r}}_{x_{1}d_{1}} = {{B_{1}{{\hat{R}}_{x}\lbrack i\rbrack}s_{1}} = {\frac{1}{L}B_{1}{X_{0}\lbrack i\rbrack}{X_{0}^{t}\lbrack i\rbrack}s_{1}}}$

computing $\begin{matrix} {{{w_{GSC}^{t}\lbrack i\rbrack} = {{r_{x_{1}d_{1}}^{t}\lbrack i\rbrack}{R_{x_{1}}^{- 1}\lbrack i\rbrack}}};} & (29) \end{matrix}$

estimating $\begin{matrix} {{\hat{b}}_{1} = {{{sgn}\left( {\left( {u_{1}^{t} - {{w_{GSC}^{t}\left\lbrack \hat{i} \right\rbrack}B_{1}}} \right){x\left\lbrack \hat{i} \right\rbrack}} \right)}.}} & (35) \end{matrix}$

wherein $\begin{matrix} {u_{1}^{t} - {{w_{GSC}^{t}\lbrack i\rbrack}B_{1}}} & \left( {30a} \right) \end{matrix}$

 is a weight vetor; and computing $\begin{matrix} {{y\lbrack i\rbrack} = {\left( {u_{1}^{t} - {{w_{GSC}^{t}\lbrack i\rbrack}B_{1}}} \right){{x\lbrack i\rbrack}.}}} & \left( {30b} \right) \end{matrix}$


6. The method of claim 1, wherein the step of updating weight coefficients further comprises the steps of: applying X₀[i]Δ[x⁽¹⁾[i], . . . , x^((L))[i]], wherein L is number of independent samples of an observation vector x^((m))[i] and s₁ is a designated sender's spreading code; applying ${{\hat{u}}_{1} = \frac{s_{1}}{s_{1}}};$

applying B̂₁ = I − û_(j)û_(j)^(t);

for j=1 to (M−1), computing d_(j) and x_(j) ${{{d_{j}^{t}\lbrack i\rbrack}{\underset{\underset{\_}{\_}}{\Delta}\left\lbrack {{{\hat{d}}_{j}^{(1)}\lbrack i\rbrack},\ldots \quad,{{\hat{d}}_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack}} = {{{\hat{u}}_{j}^{t}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}}},{{{{X_{j}\lbrack i\rbrack}{\underset{\underset{\_}{\_}}{\Delta}\left\lbrack {{x_{j}^{(1)}\lbrack i\rbrack},\ldots \quad,{x_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack}} = {{{\hat{B}}_{j}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}}};}$

computing (j+1)th stage basis vector, ${{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}{{x_{j}^{(m)}\lbrack i\rbrack}{d_{j}^{(m)}\lbrack i\rbrack}^{*}}}} = {\frac{1}{L}{X_{j}\lbrack i\rbrack}{d_{j}\lbrack i\rbrack}}}$ δ̂_(j + 1)[i] = r̂_(x_(j)d_(j))[i] ${{{\hat{u}}_{j + 1}\lbrack i\rbrack} = \frac{{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}\lbrack i\rbrack}};$

computing (j+1)th blocking matrix {circumflex over (B)}_(j+1) {circumflex over (B)} _(j+1) [i]=I−û _(j+1) [i]û _(j+1) ^(†) [i]; computing d_(M)^((m))[i]

 and setting it equal to ∈_(M)^((m))[i]

applying ${{{d_{M}^{t}\lbrack i\rbrack}{\underset{\underset{\_}{\_}}{\Delta}\left\lbrack {{{\hat{d}}_{M}^{(1)}\lbrack i\rbrack},\ldots \quad,{{\hat{d}}_{M}^{(L)}\lbrack i\rbrack}} \right\rbrack}} = {{e_{M}^{t}\lbrack i\rbrack} = {{{\hat{u}}_{M}^{t}\lbrack i\rbrack}{X_{M - 1}\lbrack i\rbrack}}}};$ ${{{\hat{\sigma}}_{d_{M}}^{2}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}{{{\hat{d}}_{M}^{(m)}\lbrack i\rbrack}}^{2}}} = {{\hat{\xi}}_{M}\lbrack i\rbrack}}},{{{{\hat{\omega}}_{M}\lbrack i\rbrack} = {{{\hat{\xi}}_{M}^{- 1}\lbrack i\rbrack}{{\hat{\delta}}_{M}\lbrack i\rbrack}}};}$

for j=(M−1) to 2, estimating variance of d_(j)[i] ${{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} = {\frac{1}{L}{\sum\limits_{m = 1}^{L}{{{\hat{d}}_{j}^{(m)}\lbrack i\rbrack}}^{2}}}};$

estimating variance of ∈_(j) ${{{{\hat{\xi}}_{j}\lbrack i\rbrack}\underset{\underset{\_}{\_}}{\Delta}{{\hat{\sigma}}_{\in_{j}}^{2}\lbrack i\rbrack}} = {{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} - {{{\hat{\xi}}_{j + 1}^{- 1}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}^{2}\lbrack i\rbrack}}}};$

 and computing jth scalar Wiener filter {circumflex over (ω)}_(j)[i] ${{\hat{\omega}}_{j}\lbrack i\rbrack} = {\frac{{\hat{\delta}}_{j}\lbrack i\rbrack}{{\hat{\xi}}_{j}\lbrack i\rbrack}.}$


7. The method of claim 1, wherein the step of updating weight coefficients further comprises the steps of: applying X₀[i]Δ[i]x⁽¹⁾[i], . . . , x^((L))[i],wherein L is number of independent samples of an observation vector x^((m))[i] and s₁ is a designated sender's spreading code; applying ${\hat{u}}_{1} = \frac{s_{1}}{s_{1}}$

 and x₀[i]=x[i]; for j=1 to (M−1), computing d_(j) and x_(j) d_(j)[i] = û_(j)^(t)[i]x_(j − 1)[i]

 x_(j)[i]=x_(j−1)[i]−û_(j)[i]d_(j)[i] ${{d_{j}^{t}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{{\hat{d}}_{j}^{(1)}\lbrack i\rbrack},\ldots \quad,{{\hat{d}}_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{{\hat{u}}_{j}^{t}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}}}},{{{X_{j}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{x_{j}^{(1)}\lbrack i\rbrack},\ldots \quad,{x_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{X_{j - 1}\lbrack i\rbrack} - {{{\hat{u}}_{j}\lbrack i\rbrack}{d_{j}^{t}\lbrack i\rbrack}}}}};}$

computing (j+1)th stage basis vector, ${{\hat{r}}_{x_{i}d_{j}}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{x_{j}^{(m)}\lbrack i\rbrack}{d_{j}^{(m)}\lbrack i\rbrack}^{*}}}} = {\frac{1}{L}{X_{j}\lbrack i\rbrack}{d_{j}\lbrack i\rbrack}}}$ δ̂_(j + 1)[i] = r̂_(x_(j)d_(j))[i] ${{{\hat{u}}_{j + 1}\lbrack i\rbrack} = \frac{{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}\lbrack i\rbrack}};$

computing d_(M)^((m))[i]

 and setting it equal to ε_(M)^((m))[i]

applying ${{d_{M}^{t}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{{\hat{d}}_{M}^{(1)}\lbrack i\rbrack},,{{\hat{d}}_{M}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{e_{M}^{t}\lbrack i\rbrack} = {{{\hat{u}}_{M}^{t}\lbrack i\rbrack}{X_{M - 1}\lbrack i\rbrack}}}}};$ ${{{\hat{\sigma}}_{d_{M}}^{2}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{{\hat{d}}_{M}^{(m)}\lbrack i\rbrack}}^{2}}} = {{\hat{\xi}}_{M}\lbrack i\rbrack}}},{{{{\hat{\omega}}_{M}\lbrack i\rbrack} = {{{\hat{\xi}}_{M}^{- 1}\lbrack i\rbrack}{{\hat{\delta}}_{M}\lbrack i\rbrack}}};}$

for j=(M−1) to 2, estimating variance of ${d_{j}\lbrack i\rbrack},{{{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} = {\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{{\hat{d}}_{j}^{(m)}\lbrack i\rbrack}}^{2}}}};}$

estimating variance of $\varepsilon_{j},{{{{\hat{\xi}}_{j}\lbrack i\rbrack}\overset{\Delta}{=}{{{\hat{\sigma}}_{\varepsilon_{j}}^{2}\lbrack i\rbrack} = {{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} - {{{\hat{\xi}}_{j + 1}^{- 1}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}^{2}\lbrack i\rbrack}}}}};}$

 and computing jth scalar Wiener filter by ${{\hat{\omega}}_{j}\lbrack i\rbrack},{{{\hat{\omega}}_{j}\lbrack i\rbrack} = {\frac{{\hat{\delta}}_{j}\lbrack i\rbrack}{{\hat{\xi}}_{j}\lbrack i\rbrack}.}}$


8. The method of claim 1, wherein the steps of updating weight coefficients and using the updated weight coefficients further comprises the steps of: for k=1 to n, applying ${{r_{x_{0}d_{0}}^{(k)}\lbrack i\rbrack} = s_{1}},{{{\hat{u}}_{1}^{(k)}\lbrack i\rbrack} = \frac{s_{1}}{s_{1}}},$

 and {circumflex over (δ)}₁ ^((k))[i]=¦s₁¦, wherein x₀^((k))[i]

 is the received data vector, s₁ is a designated sender's spreading code, and k is kth clock time, where k=1is the first time the data is observed; for j=1 to (M−1), applying d_(j)^((k))[i] = û_(j)^((k))[i]^(t)x_(j − 1)^((k))[i], and x_(j)^((k))[i] = x_(j − 1)^((k))[i] − û_(j)^((k))[i]d_(j)^((k))[i];

computing (j+1)th stage basis vector, r̂_(x_(j)d_(j))^((k))[i] = (1 − α)r̂_(x_(j)d_(j))^((k − 1))[i] + x_(j)^((k))[i]d_(j)^((k))[i]^(*),

${{{\hat{\delta}}_{j + 1}^{(k)}\lbrack i\rbrack} = {{{\hat{r}}_{x_{j}d_{j}}^{({k - 1})}\lbrack i\rbrack}}},{{{\hat{u}}_{j + 1}^{(k)}\lbrack i\rbrack} = \frac{{\hat{r}}_{x_{j}d_{j}}^{(k)}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}^{(k)}\lbrack i\rbrack}},$

wherein α is a time constant; applying ε_(M)^((k))[i] = d_(M)^((k))[i]^(t) = û_(M)^((k))[i]^(t)x_(M − 1)^((k))[i];

for j=M to 2, estimating variance of ε_(j)^((k))[i]

δ̂_(j)^((k))[i] = (δ̂_(ε_(j))^((k)))²[i] = (1 − α)ξ̂_(j)^((k − 1))[i] + ε_(j)^((k))[i]²;

computing jth scalar Wiener filter ω̂_(j)^((k))[i]

${{{\hat{\omega}}_{j}^{(k)}\lbrack i\rbrack} = \frac{{\hat{\delta}}_{j}^{(k)}\lbrack i\rbrack}{{\hat{\xi}}_{j}^{(k)}\lbrack i\rbrack}};$

 and computing (j−1)th error signal ε_(j − 1)^((k))[i]

ε_(j − 1)^((k))[i] = d_(j − 1)^((k))[i] − ω̂_(j)^((k))[i]^(*)ε_(j)^((k))[i];

wherein output at time kth is y^((k))[i] = ε₁^((k))[i].


9. An adaptive near-far resistant receiver for an asynchronous wireless system comprising: means for receiving an asynchronous data vector including a spreading code; using the received asynchronous data vector, means for updating weight coefficients of an adaptive filter without prior knowledge of synchronization of the spreading code of the data vector; using the updated weight coefficients, means for determining synchronization of the spreading code; and means for demodulating the output of the filter using the determined synchronization of the spreading code for obtaining a filtered data vector.
 10. The receiver of claim 9, further comprising means for dividing the data vector represented by x[i] into two channels x₁[i] and d₁[i] using a transformation T₁ on x[i], represented by T₁x[i], wherein the transformed data vector x[i] does not contain information about a designated sender's spreading code s₁ and d₁[i] contains primarily only information about the spreading code s₁ and residual data from correlation of s₁ and x[i].
 11. The receiver of claim 10, wherein the transformation T₁ is defined by $\begin{matrix} {{T_{1} = \begin{bmatrix} u_{1}^{t} \\ B_{1} \end{bmatrix}},} & (16) \end{matrix}$

where B₁is a blocking matrix whose rows are composed of any orthonormal basis set of the nullspace of the normalized signal vector ${u_{1} = {s_{1}/\sqrt{s_{1}^{t}s_{1}}}},$

 and where B₁u₁=B₁s₁ =0. (17)
 12. The receiver of claim 9, wherein the means for determining the synchronization of the spreading code comprises: means for computing î, the time occurrence of the information data bit, from the equation; $\begin{matrix} {{{{{Re}\left\{ {y\left\lbrack \hat{i} \right\rbrack} \right\}}} = {\max\limits_{{k\varepsilon}{\{{0,1,\ldots \quad,{{NS} - 1}}\}}}{{{Re}\left\{ {y\left\lbrack {i - k} \right\rbrack} \right\}}}}},} & \left( {30c} \right) \end{matrix}$

where y[i]=w[i]^(†)x [i] is filtered output from a likelihood ratio test at clock time i detecting sequentially maximum of all likelihood ratio tests in the set Y[i] given by Y[i]={¦Re{y[i]}¦, . . . , ¦Re{y[i−NS+1]}¦}, where N is number of chips in the spreading code and S is number of samples per chip time.
 13. The receiver of claim 9, wherein the means for using the received asynchronous data vector, to update weight coefficients further comprises: means for applying X₀[i]Δ[x⁽¹⁾[i], . . . , x^((L))[i]],wherein L is number of independent samples of an observation vector x^((m))[i] and s₁ is a designated sender's spreading code; means for applying ${{\hat{u}}_{1} = \frac{s_{1}}{s_{1}}};$

means for applying B̂₁ = I − û_(j)û_(j)^(t);

for j=1 to (M−1), means for computing d_(j) and x_(j) ${{d_{j}^{t}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{{\hat{d}}_{j}^{(1)}\lbrack i\rbrack},\ldots \quad,{{\hat{d}}_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{\hat{u}}_{j}^{t}{X_{j - 1}\lbrack i\rbrack}}}},{{{X_{j}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{x_{j}^{(1)}\lbrack i\rbrack},\ldots \quad,{x_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{{\hat{B}}_{j}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}}}};}$

means for computing (j+1)th stage basis vector, $\begin{matrix} {{{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{x_{j}^{(m)}\lbrack i\rbrack}{d_{j}^{(m)}\lbrack i\rbrack}^{*}}}} = {\frac{1}{L}{X_{j}\lbrack i\rbrack}{d_{j}\lbrack i\rbrack}}}} \\ {{{\hat{\delta}}_{j + 1}\lbrack i\rbrack} = {{{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack}}} \\ {{{{\hat{u}}_{j + 1}\lbrack i\rbrack} = \frac{{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}\lbrack i\rbrack}};} \end{matrix}$

means for computing (j+1)th blocking matrix {circumflex over (B)}_(j+1) B̂_(j + 1)[i] = I − û_(j + 1)[i]û_(j + 1)^(t)[i];

means for computing d_(M)^((m))[i]

 and set it equal to ε_(M)^((m))[i]

${{d_{M}^{\dagger}\lbrack i\rbrack}\overset{\Delta}{=}{\left\lbrack {{{\hat{d}}_{M}^{(1)}\lbrack i\rbrack},\ldots \quad,{{\hat{d}}_{M}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{e_{M}^{\dagger}\lbrack i\rbrack} = {{{\hat{u}}_{M}^{\dagger}\lbrack i\rbrack}{X_{M - 1}\lbrack i\rbrack}}}}};$

means for applying ${{{\hat{\sigma}}_{d_{M}}^{2}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{{\hat{d}}_{M}^{(m)}\lbrack i\rbrack}}^{2}}} = {{\hat{\xi}}_{M}\lbrack i\rbrack}}},{{{\hat{\omega}}_{M}\lbrack i\rbrack} = {{\hat{\xi}}_{M}^{- 1}\lbrack i\rbrack}},{{{\hat{\delta}}_{M}\lbrack i\rbrack};}$

for j=(M−1) to 2, means for estimating variance of d₁[i] ${{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} = {\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{{\hat{d}}_{j}^{(m)}\lbrack i\rbrack}}^{2}}}};$

means for estimate variance of ∈_(j) ${{{\hat{\xi}}_{j}\lbrack i\rbrack}\overset{\Delta}{=}{{{\hat{\sigma}}_{\varepsilon_{i}}^{2}\lbrack i\rbrack} = {{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} - {{{\hat{\xi}}_{j + 1}^{- 1}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}^{2}\lbrack i\rbrack}}}}};{and}$

 and means for computing jth scalar Wiener filter {circumflex over (ω)}_(j)[i] ${{\hat{\omega}}_{j}\lbrack i\rbrack} = {\frac{{\hat{\delta}}_{j}\lbrack i\rbrack}{{\hat{\xi}}_{j}\lbrack i\rbrack}.}$


14. The receiver of claim 9, wherein the means for using the received asynchronous data vector, to update weight coefficients further comprises: means for applying X₀[i]Δ[x⁽¹⁾[i], . . . , x^((L))[i]],wherein L is number of independent samples of an observation vector x^((m))[i] and S₁ is a designated sender's spreading code; means for applying ${\hat{u}}_{1} = \frac{s_{1}}{s_{1}}$

 and x₀[i]=x[i]; for j=1 to (M−1), means for computing d_(j) and X_(j) $\begin{matrix} {{d_{j}\lbrack i\rbrack} = \quad {{{\hat{u}}_{j}^{\dagger}\lbrack i\rbrack}{x_{j - 1}\lbrack i\rbrack}}} \\ {{x_{j}\lbrack i\rbrack} = \quad {{x_{j - 1}\lbrack i\rbrack} - {{{\hat{u}}_{j}\lbrack i\rbrack}{d_{j}\lbrack i\rbrack}}}} \\ {{{d_{j}^{\dagger}\lbrack i\rbrack}\overset{\Delta}{=}\quad {\left\lbrack {{{\hat{d}}_{j}^{(1)}\lbrack i\rbrack},\ldots \quad,{{\hat{d}}_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{{\hat{u}}_{j}^{\dagger}\lbrack i\rbrack}{X_{j - 1}\lbrack i\rbrack}}}},} \\ {{{X_{j}\lbrack i\rbrack}\overset{\Delta}{=}\quad {\left\lbrack {{x_{j}^{(1)}\lbrack i\rbrack},\ldots \quad,{x_{j}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{x_{j - 1}\lbrack i\rbrack} - {{{\hat{u}}_{j}\lbrack i\rbrack}{d_{j}^{\dagger}\lbrack i\rbrack}}}}};} \end{matrix}$

means for computing (j+1)th stage basis vector, $\begin{matrix} {{{\hat{r}}_{x_{j}d_{i}}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{x_{j}^{(m)}\lbrack i\rbrack}{d_{j}^{(m)}\lbrack i\rbrack}^{*}}}} = {\frac{1}{L}{X_{j}\lbrack i\rbrack}{d_{j}\lbrack i\rbrack}}}} \\ {{{\hat{\delta}}_{j + 1}\lbrack i\rbrack} = {{{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack}}} \\ {{{{\hat{u}}_{j + 1}\lbrack i\rbrack} = \frac{{\hat{r}}_{x_{j}d_{j}}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}\lbrack i\rbrack}};} \end{matrix}$

means for computing l_(M)^((m))[i]

 and set it equal to ε_(M)^((m))[i]

${{d_{j}^{\dagger}\lbrack i\rbrack}\overset{\Delta}{=}\quad {\left\lbrack {{{\hat{d}}_{M}^{(1)}\lbrack i\rbrack},,{{\hat{d}}_{M}^{(L)}\lbrack i\rbrack}} \right\rbrack = {{e_{M}^{\dagger}\lbrack i\rbrack} = {{{\hat{u}}_{M}^{\dagger}\lbrack i\rbrack}{X_{M - 1}\lbrack i\rbrack}}}}};$

means for applying ${{{\hat{\sigma}}_{d_{M}}^{2}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{{\hat{d}}_{M}^{(m)}\lbrack i\rbrack}}^{2}}} = {{\hat{\xi}}_{M}\lbrack i\rbrack}}},{{{{\hat{\omega}}_{M}\lbrack i\rbrack} = {{{\hat{\xi}}_{M}^{- 1}\lbrack i\rbrack}{{\hat{\delta}}_{M}\lbrack i\rbrack}}};}$

for j=(M−1) to 2, means for estimating variance of ${d_{j}\lbrack i\rbrack},{{{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} = {\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{{\hat{d}}_{j}^{(m)}\lbrack i\rbrack}}^{2}}}};}$

means for estimating variance of $\varepsilon_{j},{{{{\hat{\xi}}_{j}\lbrack i\rbrack}\overset{\Delta}{=}{{{\hat{\sigma}}_{\varepsilon_{j}}^{2}\lbrack i\rbrack} = {{{\hat{\sigma}}_{d_{j}}^{2}\lbrack i\rbrack} - {{{\hat{\xi}}_{j + 1}^{- 1}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}^{2}\lbrack i\rbrack}}}}};{and}}$

means for computing jth scalar Wiener filter by ${{\hat{\omega}}_{j}\lbrack i\rbrack},{{{\hat{\omega}}_{j}\lbrack i\rbrack} = {\frac{{\hat{\delta}}_{j}\lbrack i\rbrack}{{\hat{\xi}}_{j}\lbrack i\rbrack}.}}$


15. The receiver of claim 9, wherein the means for using the received asynchronous data and updates weight coefficients further comprises: for k=1 to n, means for applying ${{{\hat{r}}_{x_{0}d_{0}}^{(k)}\lbrack i\rbrack} = s_{1}},{{{\hat{u}}_{1}^{(k)}\lbrack i\rbrack} = \frac{s_{1}}{s_{1}}},{{{and}\quad {{\hat{\delta}}_{1}^{(k)}\lbrack i\rbrack}} = {s_{1}}},$

wherein x₀ ^((k))[i] is the received data vector, s₁ is a designated sender's spreading code, and k is kth clock time, where k=1 is the first time the data is observed; for j=1 to (M−1), means for applying d_(j)^((k))[i] = û_(j)^((k))[i]^(†)x_(j − 1)^((k))[i], and x_(j)^((k))[i] = x_(j − 1)^((k))[i] − û_(j)^((k))[i]d_(j)^((k))[i];

means for computing (j+1)th stage basis vector, $\quad {{{{\hat{\delta}}_{j + 1}^{(k)}\lbrack i\rbrack} = {{{\hat{r}}_{x_{j}d_{j}}^{(k)}\lbrack i\rbrack}}},\quad {{{\hat{u}}_{j + 1}^{(k)}\lbrack i\rbrack} = \frac{{\hat{r}}_{x_{j}d_{j}}^{(k)}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}^{(k)}\lbrack i\rbrack}},}$

wherein a is a time constant; means for applying ε_(M)^((k))[i] = d_(M)^((k))[i]^(†) = û_(M)^((k))[i]^(†)x_(M − 1)^((k))[i];

for j=M to 2, means for estimating variance of ε_(j)^((k))[i]

ξ̂_(j)^((k))[i] = (δ̂_(ε_(j))^((k)))²[i] = (1 − α)ξ̂_(j)^((k − 1))[i] + ε_(j)^((k))[i]²;

means for computing jth scalar Wiener filter ω̂_(j)^((k))[i]

${{{\hat{\omega}}_{j}^{(k)}\lbrack i\rbrack} = \frac{{\hat{\delta}}_{j}^{(k)}\lbrack i\rbrack}{{\hat{\xi}}_{j}^{(k)}\lbrack i\rbrack}};{and}$

means for computing (j−1)th error signal ε_(j − 1)^((k))[i]

ε_(j − 1)^((k))[i] = d_(j − 1)^((k))[i] − ω̂_(j)^((k))[i]^(*)ε_(j)^((k))[i];

wherein output at time kth is y^((k))[i] = ε₁^((k))[i].


16. The receiver of claim 9, wherein the means for using the received asynchronous data vector, to update weight coefficients further comprises: means for computing maximum likelihood estimator for R_(x)[i] ${{\hat{R}}_{x}\lbrack i\rbrack} = {{\frac{1}{L}{\sum\limits_{m = 1}^{L}\quad {{x^{(m)}\lbrack i\rbrack}{x^{{(m)}*}\lbrack i\rbrack}}}} = {\frac{1}{L}{X_{0}\lbrack i\rbrack}{{X_{0}^{\dagger}\lbrack i\rbrack}.}}}$

 wherein, x^((m))[i] is an observation vector at a sampling time iT_(s) of the mth symbol, L is the number of independent samples of the observation vector x^((m))[i] for the initial acquisition of detector parameters, and the data is given in matrix form by x ₀ [i]Δ[x ⁽¹⁾ [i], . . . , x ^((L))[i]]; means for computing ${{\hat{R}}_{x_{1}}\lbrack i\rbrack} = {{B_{1}{{\hat{R}}_{x_{1}}\lbrack i\rbrack}B_{1}^{\dagger}} = {\frac{1}{L}B_{1}{X_{0}\lbrack i\rbrack}{X_{0}^{\dagger}\lbrack i\rbrack}B_{1}^{\dagger}\quad {and}}}$ ${\hat{r}}_{x_{1}d_{1}} = {{B_{1}{{\hat{R}}_{x}\lbrack i\rbrack}s_{1}} = {\frac{1}{L}B_{1}{X_{0}\lbrack i\rbrack}{X_{0}^{t}\lbrack i\rbrack}s_{1}}}$

means for computing $\begin{matrix} {{{w_{GSC}^{\dagger}\lbrack i\rbrack} = {{r_{x_{1}d_{1}}^{\dagger}\lbrack i\rbrack}{R_{x_{1}}^{- 1}\lbrack i\rbrack}}};} & (29) \end{matrix}$

means for estimating $\begin{matrix} {{{\hat{b}}_{1} = {{sgn}\left( {\left( {u_{1}^{\dagger} - {{w_{GSC}^{\dagger}\left\lbrack \hat{i} \right\rbrack}B_{1}}} \right){x\left\lbrack \hat{i} \right\rbrack}} \right)}},} & (35) \end{matrix}$

 wherein $\begin{matrix} {u_{1}^{\dagger} - {{w_{GSC}^{\dagger}\lbrack i\rbrack}B_{1}}} & \left( {30a} \right) \end{matrix}$

 is a weight vector; and means for computing $\begin{matrix} {{y\lbrack i\rbrack} = {\left( {u_{1}^{\dagger} - {{w_{GSC}^{\dagger}\lbrack i\rbrack}B_{1}}} \right){{x\lbrack i\rbrack}.}}} & \left( {30b} \right) \end{matrix}$


17. A digital signal processor having stored thereon a set of instructions including instructions for filtering interference and noise of an asynchronous wireless signal, when executed, the instructions cause the digital signal processor to perform the steps of: receiving an asynchronous data vector including a spreading code; using the received asynchronous data vector, updating weight coefficients of an adaptive filter without prior knowledge of synchronization of the spreading code of the data vector; using the updated weight coefficients information data bits to determine the synchronization of the spreading code of the data vector; and demodulating the output of the filter using the determined synchronization of the spreading code of the data vector for obtaining a filtered data vector.
 18. The digital signal processor of claim 17, further comprising instructions for dividing the data vector represented by x[i] into two channels x₁[i] and d₁[i] using a transformation T₁ on x[i], represented by T₁x[i], wherein the transformed data vector x[i] does not contain information about a designated sender's spreading code s₁, and d₁[i] contains primarily only information about the spreading code s₁ and residual data from correlation of s₁ and x[i].
 19. The digital signal processor of claim 18, wherein the transformation T₁ is defined by $\begin{matrix} {{T_{1} = \begin{bmatrix} u_{1}^{\dagger} \\ B_{1} \end{bmatrix}},} & (16) \end{matrix}$

where B₁ is a blocking matrix whose rows are composed of any orthonormal basis set of the nullspace of the normalized signal vector ${u_{1} = {s_{1}/\sqrt{s_{1}^{\dagger}s_{1}}}},$

 and where B₁u₁=B₁s₁=0.
 20. The digital signal processor of claim 17, wherein the instructions for determining synchronization comprises instructions for: computing î, the time occurrence of the information data bit, from the equation; $\begin{matrix} {{{{{Re}\left\{ {y\left\lbrack \hat{i} \right\rbrack} \right\}}} = {\max\limits_{{k\varepsilon}{\{{0,1,\quad \ldots \quad,{{NS} - 1}}\}}}{{{Re}\left\{ {y\left\lbrack {i - k} \right\rbrack} \right\}}}}},} & \left( {30c} \right) \end{matrix}$

where y[i]=w[i]^(†)x[i] is filtered output from a likelihood test at clock time I detecting sequentially maximum of all likelihood tests in the set Y[i] given by Y[i]={¦Re{y[i]}¦, . . . ,¦Re{y[i−NS+1]}¦}, where N is number of chips in the spreading code and S is number of samples per chip time.
 21. An adaptive receiver for filtering interference and noise of an asynchronous wireless signal comprising: means for receiving an asynchronous data vector including information data bits; means for updating weight coefficients of an adaptive filter without a prior knowledge of synchronization of the information data bits; using the updated weight coefficient, means for determining the start of the information data bits; and means for demodulating the output of the adaptive filter.
 22. The adaptive receiver of claim 21, further comprising means for dividing the data vector represented by x[i] into two channels x₁[i] and d₁[i] using a transformation T₁on x[i], represented by T₁x[i], wherein the transformed data vector x[i] does not contain information about a designated sender's spreading code s₁, and d₁[i] contains primarily only information about the spreading code s₁ and residual data from correlation of s₁ and x[i].
 23. The adaptive receiver of claim 22, wherein the transformation T₁is defined by $\begin{matrix} {{T_{1} = \begin{bmatrix} u_{1}^{\dagger} \\ B_{1} \end{bmatrix}},} & (16) \end{matrix}$

where B₁is a blocking matrix whose rows are composed of any orthonormal basis set of the nullspace of the normalized signal vector ${u_{1} = {s_{1}/\sqrt{s_{1}^{\dagger}s_{1}}}},$

 and where B₁u₁=B₁s₁ =0. (17)
 24. The adaptive receiver of claim 21, wherein the means for determining the start of the information data bits comprises means for: computing î, the time occurrence of the information data bit, from the equation; $\begin{matrix} {{{{{Re}\left\{ {y\left\lbrack \hat{i} \right\rbrack} \right\}}} = {\max\limits_{{k\varepsilon}{\{{0,1,\quad \ldots \quad,{{NS} - 1}}\}}}{{{Re}\left\{ {y\left\lbrack {i - k} \right\rbrack} \right\}}}}},} & \left( {30c} \right) \end{matrix}$

 where y[i]=w[i]^(†)x[i] is filtered output from a likelihood ratio test at clock time i detecting sequentially maximum of all likelihood ratio tests in the set Y[i] given by  Y[i]={¦Re{y[i]}¦, . . . ,¦Re{y[i−NS+1]}¦}, where N is number of chips in the spreading code and S is number of samples per chip time.
 25. The adaptive receiver of claim 21, wherein the means for determining the start of the information data bits comprises: for k=1to n, means for applying ${{{\hat{r}}_{x_{0}d_{0}}^{(k)}\lbrack i\rbrack} = s_{1}},{{{\hat{u}}_{1}^{(k)}\lbrack i\rbrack} = \frac{s_{1}}{s_{1}}},$

 and δ̂₁^((k))[i] = s₁,

 wherein x₀^((k))[i]

 is the received data vector, s₁is a designated sender's spreading code, and k is kth clock time, where k=1 is the first time the data is observed; for j=1 to (M−1), means for applying d_(j)^((k))[i] = û_(j)^((k))[i]^(†)x_(j − 1)^((k))[i], and x_(j)^((k))[i] = x_(j − 1)^((k))[i] − û_(j)^((k))[i]d_(j)^((k))[i];

means for computing (j+1)th stage basis vector, ${{{\hat{r}}_{x_{j}d_{j}}^{(k)}\lbrack i\rbrack} = {{\left( {1 - \alpha} \right){{\hat{r}}_{x_{j}d_{j}}^{({k - 1})}\lbrack i\rbrack}} + {{x_{j}^{(k)}\lbrack i\rbrack}{d_{j}^{(k)}\lbrack i\rbrack}^{*}}}},{{{\hat{\delta}}_{j + 1}^{(k)}\lbrack i\rbrack} = {{{\hat{r}}_{x_{j}d_{j}}^{(k)}\lbrack i\rbrack}}},{{{\hat{u}}_{j + 1}^{(k)}\lbrack i\rbrack} = \frac{{\hat{r}}_{x_{j}d_{j}}^{(k)}\lbrack i\rbrack}{{\hat{\delta}}_{j + 1}^{(k)}\lbrack i\rbrack}},$

 wherein α is a time constant; means for applying ε_(M)^((k))[i] = d_(M)^((k))[i]^(†) = û_(M)^((k))[i]^(†)x_(M − 1)^((k))[i];

for j=M to 2, means for estimating variance of ε_(j)^((k))[i]

ξ̂_(j)^((k))[i] = (δ̂_(ε_(j))^((k)))²[i] = (1 − α)ξ̂_(j)^((k − 1))[i] + ε_(j)^((k))[i]²;

means for computing jth scalar Wiener filter ω̂_(j)^((k))[i]

${{{\hat{\omega}}_{j}^{(k)}\lbrack i\rbrack} = \frac{{\hat{\delta}}_{j}^{(k)}\lbrack i\rbrack}{{\hat{\xi}}_{j}^{(k)}\lbrack i\rbrack}};{and}$

 and means for computing (j−1)th error signal ε_(j − 1)^((k))[i]

∈_(j − 1)^((k))[i] = d_(j − 1)^((k))[i] − ω̂_(j)^((k))[i]^(*)∈_(j)^((k))[i]; wherein  output  at  time  kth  is y^((k))[i] = ∈₁^((k))[i]. 